Hi,
I have managed to solve this using below code.
public class HomeController : Controller
{
private HttpClient getNewHttpClient(string userName, string password, string domainName, string webAPIBaseAddress)
{
HttpClient client = new HttpClient(new HttpClientHandler() { Credentials = new NetworkCredential(userName, password, domainName) });
client.BaseAddress = new Uri(webAPIBaseAddress);
client.Timeout = new TimeSpan(0, 2, 0);
return client;
}
public async Task<ActionResult> GetAssignmentInfo()
{
string _serviceUri = "http://devcrm/";
HttpClient httpClient = getNewHttpClient("crm2016Inst", "Password", "domainname", _serviceUri);
var result = await httpClient.GetAsync(_serviceUri + "api/data/v8.1/accounts?$select=name&$top=3");
var accountInfoJson = await result.Content.ReadAsStringAsync();
var account = JsonConvert.DeserializeObject<CRMODataConnectionSample.CRMEntity.RootObject<CRMEntity.AccountValue>>(accountInfoJson);
return Content(account);
}
}
namespace CRMODataConnectionSample.CRMEntity
{
public class RootObject<T>
{
[JsonProperty("@odata.context")]
public string context { get; set; }
public List<T> value { get; set; }
}
public class AccountValue : Account // This is CRM Entity name, generated by T4 Template
{
[JsonProperty("@odata.etag")]
public string etag { get; set; }
}
}
Regards,