簡體   English   中英

ASP.NET MVC-如何在Webapi控制器返回的Razor視圖中顯示數據

[英]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的信息

親愛的有兩種方法

  1. 如果您一定要使用Razor,則應在mvc控制器中使用api,從api中獲取數據,然后將其以模型返回到Razor視圖,然后將在Razor視圖中使用強類型模型

  2. 如果您不受約束,那么它很簡單,如果您正在使用javascript代碼獲取數據。 只需使用它即可使用JavaScript代碼填充您的視圖。

  3. 如果您使用的是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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM