相关疑难解决方法(0)

如何使用ToString()格式化可为空的DateTime?

如何将可空的DateTime dt2转换为格式化的字符串?

DateTime dt = DateTime.Now;
Console.WriteLine(dt.ToString("yyyy-MM-dd hh:mm:ss")); //works

DateTime? dt2 = DateTime.Now;
Console.WriteLine(dt2.ToString("yyyy-MM-dd hh:mm:ss")); //gives following error:
Run Code Online (Sandbox Code Playgroud)

方法ToString没有重载需要一个参数

c# formatting datetime nullable

214
推荐指数
12
解决办法
15万
查看次数

为多语言ASP.NET MVC Web应用程序设置CurrentCulture的最佳位置

对于多语言ASP.NET MVC 3 Web应用程序,我正在确定Thread.CurrentThread.CurrentCultureThread.CurrentThread.CurrentUICulture控制器工厂,如下所示:

public class MyControllerFactory : DefaultControllerFactory {

    protected override IController GetControllerInstance(System.Web.Routing.RequestContext requestContext, Type controllerType) {

        //Get the {language} parameter in the RouteData
        string UILanguage;
        if (requestContext.RouteData.Values["language"] == null)
            UILanguage = "tr";
        else
            UILanguage = requestContext.RouteData.Values["language"].ToString();

        //Get the culture info of the language code
        CultureInfo culture = CultureInfo.CreateSpecificCulture(UILanguage);
        Thread.CurrentThread.CurrentCulture = culture;
        Thread.CurrentThread.CurrentUICulture = culture;

        return base.GetControllerInstance(requestContext, controllerType);
    }

}
Run Code Online (Sandbox Code Playgroud)

上面的代码已经快一年了!所以,我愿意接受建议.

我在Global.asax文件上注册这个,如:

ControllerBuilder.Current.SetControllerFactory(new MyControllerFactory());
Run Code Online (Sandbox Code Playgroud)

这样做很好,但我不确定这是否是做这种行为的最佳做法和最佳场所.

我没有挖掘主要角色,ControllerFactory我无法将其与之比较ActionFilterAttribute.

你怎么看待这种行动的最佳地点?

asp.net-mvc action-filter controller-factory asp.net-mvc-3

41
推荐指数
2
解决办法
3万
查看次数

C#ToString("MM/dd/yy")删除前导0

可能重复:
格式化.NET DateTime"Day",没有前导零

有没有办法删除日期格式中的前导零

例如,X.ToString("MM/dd/yy")返回07/02/11,但我希望它返回7/2/11.

这可能吗?

谢谢

c# date tostring

21
推荐指数
2
解决办法
1万
查看次数

编译器错误消息:CS0135:'Model'与声明'System.Web.Mvc.WebViewPage <TModel> .Model'冲突

我正在使用ASP.NET MVC 3.我创建了一个具有表单的强类型视图.在我的页面底部和ActionLink

  @Html.ActionLink("Edit", "Edit", new { id = Model.UserId}) 
Run Code Online (Sandbox Code Playgroud)

这将允许用户编辑信息.当我运行应用程序时,我收到以下错误.

  Compiler Error Message: CS0135: 'Model' conflicts with the declaration
 'System.Web.Mvc.WebViewPage<TModel>.Model'
Run Code Online (Sandbox Code Playgroud)

这可能是什么.

asp.net asp.net-mvc-3

11
推荐指数
1
解决办法
7472
查看次数

将 MVC 默认日期 (01/01/0001) 设置为空

我的 Razor 表单代码

<div class="form-group">
    @Html.LabelFor(model => model.achPayDate, htmlAttributes: new { @class = "control-label col-md-7" })
    @Html.DisplayFor(model => model.achPayDate, new {@class="date"})
</div>
Run Code Online (Sandbox Code Playgroud)

我的CS代码

[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? achPayDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

当 achPayDate=0001-01-01T00:00:00 时显示 01/01/0001 ,我想将日期抑制为空白。我怎样才能做到这一点??

c# asp.net-mvc datetime date razor

5
推荐指数
1
解决办法
3万
查看次数