【发布时间】:2011-09-21 00:59:22
【问题描述】:
在将我的应用程序部署到生产服务器时,我遇到了一个奇怪的问题。
我已使用编辑器模板创建日期选择器(将类添加到日期框并让 jquery 显示日期选择器)。
这非常适合我在本地 IIS 7 网络服务器上运行站点的开发(而不是开发 IIS express) 当我将应用程序部署到生产机器时,日期框显示为常规文本框,而不是日期选择器。
我可以检查生产机器上没有的东西会导致这类问题吗?
Views\Shared\EditorTemplates 文件夹中的 DateTime.cshtml:
@model DateTime?
@Html.TextBox("", (Model.HasValue ? Model.Value.ToShortDateString() : string.Empty), new { @class = "datePicker" })
有人有什么想法吗?
谢谢
【问题讨论】:
-
JQuery 肯定是在 prod 环境中加载的?做警报($);给你点什么?
-
Jquery 已加载。但它与 jquery 无关。输入没有收到模板中设置的类“datepicker”。如果我使用类 datepicker 手动添加输入,它工作正常。
-
好的 - 当您执行 EditorFor(x=>x.DateTimeProperty) 时,会向该模板添加一些 fudd 文本?
-
不,甚至没有。我试图在模板中添加一些测试数据,但这并没有显示以太。就好像他不承认这是一个 DateTime 字段。有趣的是,他在开发方面做得很好。这可能取决于 MVC 3 Dll 的版本吗?
-
如果我是你,我会从 prod 中删除所有文件并尝试重新部署。有时东西会在搬家过程中丢失。或者您可以只检查产品上是否有模板?视图模型中的属性上没有 UiHint 吗?
标签: asp.net-mvc-3 razor editortemplates