我正在学习Angular。我正在观看一个2岁的视频,我正在尝试使用路线概念并在view1.CShtml中使用(请记住,它的CShtml而不是html,而在视频中,他使用的是html)。
我也发现,视频路径以视图演示器所具有的Partial / View1相反,视图路径以〜Views / View1.cshtml(在视频文件夹中足够公平)开始。现在,当我有类似的示例目录结构时,我不明白这是什么“〜”。
另外,遗憾的是,view1没有加载:(有什么问题?当然他使用的是单个模块和控制器,但我也试图使用依赖模块也用于我自己的学习....这里有什么问题?
angular.module('App', ['myFirstApp']).controller('Fir', function ($scope) {
$scope.Customers = [
{ name: 'Kiam', city: 'Los Angeles' },
{ name: 'Se', city: 'Los Vegas' }
]
}).config(function ($routeProvider) {
$routeProvider
.when('/View1',
{
controller: 'Fir',
templateUrl: '~Views/View1.cshtml'
})
.when('/View2',
{
controller: 'First',
templateUrl: '~Views/View2.cshtml'
})
.otherwise({ redirectTo: '/View1' });
});
var temp = angular.module('myFirstApp', []);
var controllerCollection = {};
controllerCollection.First = function ($scope) {
$scope.Customers = [
{ name: 'Sita', city: 'Los Angeles' },
{ name: 'Ram', city: 'Los Vegas' },
]
};
temp.controller(controllerCollection);
答案 0 :(得分:0)
.cshtml
页面是C#razor页面,需要使用ASP.net视图引擎加载,就像你可以在A控制器中声明一个动作并从那里返回一个cshtml视图
<强>代码强>
public ActionResult View1()
{
return View();
}
否则您需要创建一个静态文件夹,该文件夹不会包含在Views
文件夹中,Asp.net限制访问views
文件夹。
参见参考SO Answer
答案 1 :(得分:0)
你可以尝试这样。当(&#39; / View1&#39;,{控制器:&#39; Fir&#39;,templateUrl:&#39; / MyViews / View1&#39;}),它& #39;够了。并检查路由配置是否添加了路由路径。如果您使用$ routeprovider,它将自动在global.asax中生成路由路径。
无需为要显示的视图页面另外指定.cshtml。