Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 根据地区验证日期_C#_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# 根据地区验证日期

C# 根据地区验证日期,c#,asp.net-mvc,asp.net-mvc-4,C#,Asp.net Mvc,Asp.net Mvc 4,我有一个MVC4应用程序,在英国编译,托管在美国服务器上。在我的模型中,有一个日期字段是必需的 此字段附带一个日期选择器,在选择日期时,它会将日期设置为英国格式的“DD/MM/YYYY”,例如2013年12月23日。提交表单时,应用程序会抛出一个验证错误,因为它不希望使用该格式 在MVC4中,我如何: 接受两种日期格式,即覆盖日期格式?我已设置了日期格式,但无法指定多个日期格式 服务器端我正在使用Linq将日期保存到数据库中。这也会将错误作为不正确的格式抛出。我想我将需要转换为英国日期 加载详细

我有一个MVC4应用程序,在英国编译,托管在美国服务器上。在我的模型中,有一个日期字段是必需的

此字段附带一个日期选择器,在选择日期时,它会将日期设置为英国格式的“DD/MM/YYYY”,例如2013年12月23日。提交表单时,应用程序会抛出一个验证错误,因为它不希望使用该格式

在MVC4中,我如何:

  • 接受两种日期格式,即覆盖日期格式?我已设置了日期格式,但无法指定多个日期格式
  • 服务器端我正在使用Linq将日期保存到数据库中。这也会将错误作为不正确的格式抛出。我想我将需要转换为英国日期
  • 加载详细信息时,根据用户的位置以正确的格式输入日期
  • 检测用户服务器端的位置
  • 有没有人知道如何基于用户全球化进行验证的详细信息


    谢谢

    在web配置的“全球化”部分,将区域性设置为“自动”。 这将使用用户的当前区域性(包括数字和日期时间格式)

    
    

    net framework将根据用户文化分析和呈现数据,MVC和Entity都将正常工作。

    您是否在
    web.config
    中添加了以下部分

    <globalization 
        enableClientBasedCulture="true" 
        uiCulture="auto" 
        culture="auto" />
    
    
    
    并以DateTime格式读取代码中的日期。这应该不会给你带来问题

    另一种方法是在服务器端代码中读取日期始终为DateTimeUTC,当您在屏幕上显示日期时,请使用
    .ToLocalTime()

    <globalization 
        enableClientBasedCulture="true" 
        uiCulture="auto" 
        culture="auto" />