我是ASP.NET MVC的新手,我不太确定我的NewTextFile Sub是否被正确调用。这个方法的作用是它只是在我的本地服务器上创建一个文本文件。作为一个新手我欣赏你看看。谢谢。
function TableController($scope) {
$scope.requests = [];
$scope.addCertificate = function () {
var certificate = {
emailAddress: $scope.emailAddress,
certificateType: $scope.certificateType,
searchType: $scope.searchType,
submittedNumbers: $scope.submittedNumbers,
};
$scope.requests.push(certificate);
};
$scope.removeCertificate = function (index) {
$scope.requests.splice(index, 1);
};
$scope.requestThatCertificatesBeEmailed = function () {
for (index = 0; index < $scope.requests.length; ++index) {
alert('For loop entered, hello!')
var submittedEmailAddressString = $scope.requests[index].emailAddress;
var submittedCertificateTypeString = $scope.requests[index].certificateType;
var submittedSearchTypeString = $scope.requests[index].searchType;
var submittedSearchString = $scope.requests[index].submittedNumbers;
alert(submittedSearchTypeString);
$.ajax({
url: '/Controllers/CreateTextFile/NewTextFile',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
submittedEmailAddress: submittedEmailAddressString,
submittedCertificateType: submittedCertificateTypeString,
submittedSearchType: submittedSearchTypeString,
submittedSearch: submittedSearchString
}),
processData: false,
dataType: 'json'
});
alert('Succesfully submitted request')
}
};
}
这是我的vb.net控制器类:
Imports System.Threading.Tasks
Imports Microsoft.AspNet.Identity
Imports Microsoft.AspNet.Identity.EntityFramework
Imports Microsoft.AspNet.Identity.Owin
Imports Microsoft.Owin.Security
Public Class CreateTextFileController
Inherits System.Web.Mvc.Controller
<HttpPost> _
<NonAction()> _
Private Sub NewTextFile(submittedEmailAddress As String, submittedCertificateType As String, submittedSearchType As String, submittedSearch As String)
//Create Textfile on local server here given the input parameters
End Sub
End Class
答案 0 :(得分:0)
我认为,从您在angularjs文件中调用的URL判断,您丢失的关键成分称为“路由”。以下是一些有用的链接:
http://www.asp.net/mvc/overview/controllers-and-routing
简而言之,“路由”是MVC用来描述“将网址与控制器方法关联”的术语。您的角度文件:
$.ajax({
url: '/Controllers/CreateTextFile/NewTextFile',
...
不会做你想要的,因为路由从文件路径中抽象出url。您将使用文件路径和方法名称作为URL,这不一定是这种情况。路由是非常强大的,你可以有多个网址映射到一个方法,或者一个方法映射到多个具有各种模式的网址,一旦你掌握了它,你会想知道没有它你做了什么。
另外,你应该注意使用$http
angular模块执行jQuery的ajax请求的注释,因为它更好地与angularjs框架集成。