【问题标题】:ASP.NET MVC2 custom dateTime format helperASP.NET MVC2 自定义日期时间格式助手
【发布时间】:2011-06-14 15:24:17
【问题描述】:

我有一个关于如何创建自定义视图助手的问题。 我想在我的索引视图中更改我的默认日期时间格式。我想编写自己的 Helper,因为我认为这很容易,例如php。 我做到了:

  1. 创建的类:

    public static class CustomViewHelpers
    {
        public static MvcHtmlString returnDateString(string format, DateTime date)
        {
            return MvcHtmlString.Create(date.ToString(format));
        }
    }
    
  2. 我已将其添加到 web.config,

  3. 我是这样用的:

     <p><em>
        Birth date</em>
        <%: CustomViewHelpers.returnDateString("D", Model.Birth_Date); %></p>
    

但我总是得到错误:

编译错误

描述:在编译服务此请求所需的资源期间发生错误。请查看以下特定错误详细信息并适当修改您的源代码。

编译器错误消息:CS1026:) 预期

但我认为这是一个错误的错误,因为当我删除我的行时它可以正常工作并且我看到有这些“)”标记。 你能解释一下为什么这种助手不起作用吗?也许你知道一个关于如何在 ASP.NET MVC2 中编写自己的助手的好教程?

【问题讨论】:

    标签: c# asp.net-mvc-2 html-helper


    【解决方案1】:

    从对助手的调用中删除;

    &lt;%: ... %&gt; 包含表达式,而不是语句,并且不应包含分号。

    【讨论】:

    • 当我删除它时;我有:错误 2 'Adventure_v1.Helpers.CustomViewHelpers.returnDateString(string, System.DateTime)' 的最佳重载方法匹配有一些无效参数但我不明白为什么?
    • 是的,我可以读取 (O_o) 错误消息,但第一个参数是“D”,所以它是字符串,第二个参数是数据库中的 DateTime,所以我不明白为什么它会返回此错误。也许从某种角度来看它会发生变化,但是为了什么?
    • 好的,我不知道为什么,但它没有 DateTime 类型的视图,但我让它工作了。感谢您的讽刺,而不是解释为什么会这样......但无论如何谢谢。我做到了:DateTime.Parse(Model.Birth_Date.ToString())
    • 这不是讽刺。第一条错误消息没有任何有用的信息。我怀疑您的模型类型错误,但我需要其他错误消息。
    • 顺便说一句,这对我来说很有趣,为什么;是如此重要,为什么当我拥有它时,我没有收到此错误消息。再次感谢 SLaks! 对不起,我错过了“其他”。再次抱歉造成误会
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    相关资源
    最近更新 更多