如何获取从JavaScript C#代码(How to fetch C# code from jav

2019-10-22 13:15发布

我要存储用户信息到本地存储,当我点击登录按钮。 现在的问题是我得到用户信息,当我点击登录按钮。 而且我有定义.ascx文件使用javascript本地存储的代码。 我的代码隐藏文件内容的用户信息的价值,我想使用该值来存储到本地存储。

这里是我的JavaScript本地存储的代码:

LocalStorage.setItem("TestUser", JSON.stringify({
        "Usr_Username": “The username(string)”,
        "Usr_Email": “Email(string)”,
        "Usr_FirstName": “First name(string)”,
        "Usr_LastName": “Last name(string)”,
        "Usr_CompanyName": “Company name(string)”,
        "Usr_CountryCode": “Country code(string)”,
        "isAdmin": “If the user has admin rights(boolean)”
    }
});

我想从使用C#代码获取用户名,电子邮件,名字,姓氏DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo()

我怎样才能做到这一点? 请指导我这个。 谢谢。

Answer 1:

您可以创建HttpHanlder和jQuery的AJAX调用它:

 $.ajax({
     url: "/User.ashx",
     contentType: "text/plain",        
      contentType: "application/json; charset=utf-8",
   success: function (data) {
    LocalStorage.setItem("TestUser", data);
   }
});

和User.ashx应该是这个样子:

public class User : IHttpHandler
{
  public void ProcessRequest(HttpContext context)
  {
     JavaScriptSerializer serializer = new JavaScriptSerializer();
     context.Response.ContentType = "text/html";
     var currentUser = DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();

     var serUser = javaScriptSerializer.Serialize(currentUser);
     context.Response.Write(serUser);
  }
  public bool IsReusable
  {
    get
    {
        return false;
    }
  }
}

或者你可以使用的WebAPI创建行动,并从AJAX调用它。 两者都是相似的,取决于你,你喜欢哪一个



文章来源: How to fetch C# code from javascript