JSON调用C#类方法
试图从JSON调用C#类 JSON代码位于my master.cshtml文件中,如下所示:JSON调用C#类方法,c#,javascript,asp.net-mvc,json,razor,C#,Javascript,Asp.net Mvc,Json,Razor,试图从JSON调用C#类 JSON代码位于my master.cshtml文件中,如下所示: var tips = $(".validateTips"); function updateTips(t) { tips .text(t) setTimeout(function () { tips.removeClass("ui-state-highlight", 1500); }, 500); } $.ajax({ type: "POST", ur
var tips = $(".validateTips");
function updateTips(t) {
tips
.text(t)
setTimeout(function () {
tips.removeClass("ui-state-highlight", 1500);
}, 500);
}
$.ajax({
type: "POST",
url: "/App_Code/LoginClass.cs/test",
data: {},
contentType: "application/json; charset=utf-8",
datatype: "JSON",
success: function (msg) {
updateTips(msg.d);
}
});
public class LoginClass
{
public static string test()
{
return "hello";
}
}
my solution folders looks like this:
+----App_Code
| |
| +---LoginClass.cs
|
+----Views
| |
| +---Shared
| |
| +---Master.cshtml
|
+----default.cshtml (Where the master layout page is connected to)
C代码位于LoginClass.cs文件中,如下所示:
var tips = $(".validateTips");
function updateTips(t) {
tips
.text(t)
setTimeout(function () {
tips.removeClass("ui-state-highlight", 1500);
}, 500);
}
$.ajax({
type: "POST",
url: "/App_Code/LoginClass.cs/test",
data: {},
contentType: "application/json; charset=utf-8",
datatype: "JSON",
success: function (msg) {
updateTips(msg.d);
}
});
public class LoginClass
{
public static string test()
{
return "hello";
}
}
my solution folders looks like this:
+----App_Code
| |
| +---LoginClass.cs
|
+----Views
| |
| +---Shared
| |
| +---Master.cshtml
|
+----default.cshtml (Where the master layout page is connected to)
updateTips不会当您对MVC应用程序进行AJAX调用时,仍然需要通过控制器 在控制器文件夹中创建名为AccountController的控制器类(Ctrl+M,Ctrl+C),并添加以下方法:
public class AccountController : Controller
{
[HttpPost]
public ActionResult Test()
{
return Json("hello");
}
}
Javascript调用:
$.ajax({
type: "POST",
url: "/Login/test",
data: {},
contentType: "application/json; charset=utf-8",
datatype: "JSON",
success: function (msg) {
updateTips(msg.d);
}
});
恐怕您不能在ASP.NET MVC中调用这样的代码。您需要先通过
控制器
首先创建一个控制器,通常在项目根目录的Controllers文件夹中:
public class LoginController : Controller // Inherit from Controller base class.
{
// An action on the controller that you can call.
[HttpPost] // Use HttpPost to limit only to POST requests.
public ActionResult Test()
{
// Use your class here to get values.
string value = LoginClass.test();
// Return a JSON result that converts your object to JSON for you.
return Json(value);
}
}
然后像这样调用操作(根据global.asax中默认路由模式{Controller}/{action}
的一部分):
如果要使用JSON而不使用POST:
public ActionResult Test()
{
string value = LoginClass.test();
return Json(value, JsonRequestBehavior.AllowGet);
}