在没有ActionResult视图的情况下将JavaScript日期时区传递给MVC控制器

在没有ActionResult视图的情况下将JavaScript日期时区传递给MVC控制器,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我需要一个没有任何视图或操作的mvc控制器。 我需要使用本地浏览器区域 mvc控制器变量的偏移量 如果其他浏览器-客户端输入 到站点,需要添加他的本地区域 并仅在所有客户端实例中使用 您认为这种方式对该功能正确吗 这是我的MVC控制器。第一个动作没有任何视图,仅设置浏览器区域偏移。请求调用来自JS代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.

我需要一个没有任何视图或操作的mvc控制器。 我需要使用本地浏览器区域 mvc控制器变量的偏移量

如果其他浏览器-客户端输入 到站点,需要添加他的本地区域 并仅在所有客户端实例中使用

您认为这种方式对该功能正确吗

这是我的MVC控制器。第一个动作没有任何视图,仅设置浏览器区域偏移。请求调用来自JS代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;

namespace MvcApplication1.Controllers
{
    public class NoneViewController : Controller
    {
 //POST/NoneViewController/BrowserZoneOffset/-60
        [HttpPost]
        public void BrowserZoneOffset(int zone)
        {

              Requests.Headers.Add("time-zone-offset, zone);
        }

    [HttpGet]
    public ActionResult GetDateView()
     { 

        // Here need to get inctance only data //from requests. If second browser open
// site need to get his zone
        int mydateOffset = Request.Headers["tume-zone"].FirstOrDefault();

        return new View(...);
     }

 }
}

这是我的js,添加本地浏览器区域 这个js调用在乞讨的网页主页上

 @section Scripts { < script type = "text/javascript" >
      //modify as needed to make it pass in what you need.
      function ZoneOffset(zoneId) {
       $.ajax({
         url: "/NoneViewController/BrowserZoneOffset/"+zoneId,
         // data: {zoneId: zoneId },
         cache: false,
         contentType: false,
         processData: false,
         type: "POST",
         success: function(data) {
          //TODO: Add whatever if you want to pass a notification back
         },
         error: function(error) {
          //TODO: Add some code here for error handling or notifications
         }
        } 

// here set local browser zone offest
var dt = Datetime.Now(); var zoneOffset = dt.GetLocalZone();
ZoneOffset(zoneOffset);

< /script>
        }
您可以
返回Json(model)
然后在JavaScript代码中解析结果

[HttpPost]
public ActionResult BrowserZoneOffset(int tz)
{
    PersistentStoreTimeZone(tz);

    return Json(new { status = "success" });
}

不过,如果您的datetime字符串格式包含时区偏移量,我认为这些都不是必需的。

为什么我们需要在post中返回任何数据?以验证操作是否成功
[HttpPost]
public ActionResult BrowserZoneOffset(int tz)
{
    PersistentStoreTimeZone(tz);

    return Json(new { status = "success" });
}