我有一个GET方法,该方法从Web API返回json对象。我已经创建了相应的模型。当我尝试将值输入视图时,出现此错误:
无法将lambda表达式转换为类型对象,因为它不是委托类型
我需要从模型中获取位置属性的值。
Controller:
public IActionResult AddEditLoadBalancer(string subscriptionId, string resourceGroupName, string loadBalancerName, string subscriptionName)
{
try
{
ViewBag.LBName = loadBalancerName;
ViewBag.SubscriptionName = subscriptionName;
var token = HttpContext.Session.GetString("Token");
var tenantid = HttpContext.Session.GetString("TenantId");
var sessionId = HttpContext.Session.GetString("SessionId");
if (!string.IsNullOrEmpty(token) || !string.IsNullOrEmpty(tenantid))
{
var path = $"/api/PaasCatalog/AddEditLoadBalancer?subscriptionId=" + subscriptionId + "&resourceGroupName=" + resourceGroupName + "&loadBalancerName=" + loadBalancerName;
var response = _httpClient.SendRequestWithBearerTokenAsync(HttpMethod.Get, path, null, token, tenantid, _cancellationToken, sessionId).Result;
if (!response.IsSuccessStatusCode)
return null;
var result = response.Content.ReadAsStringAsync().Result;
if (result == null)
return null;
var jsontemplates = JsonConvert.DeserializeObject<AddEditLoadBalancer>(result);
return View(jsontemplates);
}
else
{
RedirectToAction("SignOut", "Session");
}
}
catch (Exception ex)
{
_errorLogger.LogMessage(LogLevelInfo.Error, ex);
return null;
}
return null;
}
查看:
<div class="form-group">
<label class="col-md-2 control-label">Location:</label>
<div class="col-md-4">
@Html.EditorFor(x => x.location, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly" } })
</div>
</div>
我要去哪里错了?请帮我。谢谢。
代码中的所有内容都是正确的。我要做的就是清理并重建整个应用程序,并停止所有正在运行的工作进程。这解决了我的问题。