hamid_14
جمعه 19 مهر 1398, 17:39 عصر
با سلام وقت بخیر
من برای دریافت اطلاعات از دیتابیس با httpclient از کد زیر استفاده میکنم
using (var client = new HttpClient()) {
using (var response = await client.GetAsync(url))
{
if (response.IsSuccessStatusCode)
{
var JsonString = await response.Content.ReadAsStringAsync();
if (JsonString == "101")
{
MessageBox.Show("نام کاربری صحیح نمی باشد", "خطا");
CheckUser = false;
}
else
if (JsonString != "[]")
{
dynamic stuff = JsonConvert.DeserializeObject(JsonString);
if (stuff == null)
{
MessageBox.Show("null ", "خطا");
}
else
{
List<ListOfTOR> ListOfTOR = new List<ListOfTOR>();
datagridview1.DataSource = JsonConvert.DeserializeObject<ListOfTOR[]>(JsonString).ToList();
CheckUser = true;
}
}
else
{
datagridview1.DataSource = null;
}
}
}
}
در iis تست کردم همه چیز خوبه ولی از وقتی دیتابیس بردم روی هاست اطلاعاتی که در بانک ثبت میشه با کد بالا قایل دریافت نیستند مگر اینکه در یک بروزر دستی url بزنم اطلاعات دریافت کنم و بعد با کد بالا در نرم افزار اطلاعات را نمایش بده.امیدوارم درست توضیح داده باشم اگه از دوستان کسی دلیلش میدونه لطفا راهنمایی کنید
آدرس در متغییر url هست شبیه این کد:
http://183.183.55.55/api/apiweb/getlist?username=123456&pass=123456&Id=14&MDate=1398/07/19
این هم کد web api هست
[HttpGet("getList")]
public IActionResult getList(int Id, string MDate, string Username,string Pass)
{
var ent = db.Tbl_Authorities.FirstOrDefault(e => e.Username == Username && e.Pass == Pass);
if (ent != null)
{
var query = db.Tbl_Tickets.Where(x => x.CompanyCode == ent.CompanyCode && x.BranchCode == ent.Branch && x.IdProgram != 3 && x.IdServices == VId && x.MDate == VMDate).ToList();
return new ObjectResult(query);
}
else
{
return this.Content("101", "application/json");
}
}
من برای دریافت اطلاعات از دیتابیس با httpclient از کد زیر استفاده میکنم
using (var client = new HttpClient()) {
using (var response = await client.GetAsync(url))
{
if (response.IsSuccessStatusCode)
{
var JsonString = await response.Content.ReadAsStringAsync();
if (JsonString == "101")
{
MessageBox.Show("نام کاربری صحیح نمی باشد", "خطا");
CheckUser = false;
}
else
if (JsonString != "[]")
{
dynamic stuff = JsonConvert.DeserializeObject(JsonString);
if (stuff == null)
{
MessageBox.Show("null ", "خطا");
}
else
{
List<ListOfTOR> ListOfTOR = new List<ListOfTOR>();
datagridview1.DataSource = JsonConvert.DeserializeObject<ListOfTOR[]>(JsonString).ToList();
CheckUser = true;
}
}
else
{
datagridview1.DataSource = null;
}
}
}
}
در iis تست کردم همه چیز خوبه ولی از وقتی دیتابیس بردم روی هاست اطلاعاتی که در بانک ثبت میشه با کد بالا قایل دریافت نیستند مگر اینکه در یک بروزر دستی url بزنم اطلاعات دریافت کنم و بعد با کد بالا در نرم افزار اطلاعات را نمایش بده.امیدوارم درست توضیح داده باشم اگه از دوستان کسی دلیلش میدونه لطفا راهنمایی کنید
آدرس در متغییر url هست شبیه این کد:
http://183.183.55.55/api/apiweb/getlist?username=123456&pass=123456&Id=14&MDate=1398/07/19
این هم کد web api هست
[HttpGet("getList")]
public IActionResult getList(int Id, string MDate, string Username,string Pass)
{
var ent = db.Tbl_Authorities.FirstOrDefault(e => e.Username == Username && e.Pass == Pass);
if (ent != null)
{
var query = db.Tbl_Tickets.Where(x => x.CompanyCode == ent.CompanyCode && x.BranchCode == ent.Branch && x.IdProgram != 3 && x.IdServices == VId && x.MDate == VMDate).ToList();
return new ObjectResult(query);
}
else
{
return this.Content("101", "application/json");
}
}