[英]ASP.NET MVC - How to display data in Razor view returned from Webapi controller
我正在從表單的頁面加載中調用Web API控制器並獲取數據,這是從我的JS文件中獲取的,並且數據已按預期正確提取。
var empDetails = // code to invoke my api controller //
empDetails.$promise.then(function (empInfo) {
$scope.employeeForm.EmpDetails = empInfo.EmployeeDetails;
});
$scope.employeeForm.EmpDetails
具有正確的詳細信息。
我需要在我的剃須刀視圖引擎中顯示數據,這是我遇到的問題,我是這種開發的新手。
ViewBag,強類型模型在這里不起作用,因為我從Web API控制器返回數據,而我的不是強類型剃刀視圖。
EmpDetails
具有類似EmpID,EmpFirstName,EmpLastName,EmpLocationj的信息
親愛的有兩種方法
如果您一定要使用Razor,則應在mvc控制器中使用api,從api中獲取數據,然后將其以模型返回到Razor視圖,然后將在Razor視圖中使用強類型模型
如果您不受約束,那么它很簡單,如果您正在使用javascript代碼獲取數據。 只需使用它即可使用JavaScript代碼填充您的視圖。
如果您使用的是angular 1.x,那么這里是angularjs 1.x表單示例
<!DOCTYPE html>
<html lang="en">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="formCtrl">
<form novalidate>
First Name:<br>
<input type="text" ng-model="user.firstName"><br>
Last Name:<br>
<input type="text" ng-model="user.lastName">
<br><br>
<button ng-click="reset()">RESET</button>
</form>
<p>form = {{user}}</p>
<p>master = {{master}}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('formCtrl', function($scope) {
$scope.master = {firstName:"John", lastName:"Doe"};
$scope.reset = function() {
$scope.user = angular.copy($scope.master);
};
$scope.reset();
});
</script>
</body>
</html>
按照您在注釋中告訴開發人員的觀點,可以通過html綁定此解決方案的數據,您可以嘗試一下。
首先,在.cshtml的標頭部分的.cshtml中初始化模型 ,然后使用@model並通過添加為其指定字段名稱。 (點)對數據進行簽名並將其綁定到您的html控件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.