如果 T4MVC 不能扩展到外部 JavaScript 文件,我想找到管理“魔术字符串”的最佳方法,例如 JQuery .load() 方法中的控制器/动作值。
我想最大程度地降低更改操作以引发应用程序错误的风险。我知道我可以使用 Visual Studio 编译视图以查找客户端错误,但不能在 JS 外部文件中。
我发现了一些解决方案,例如将 View 作为 javascript 文件类型包含在内,这样我就可以使用 T4MVC 并检测 Views 编译错误,但是这种方法会使服务器产生不必要的请求,如果是 JS,它将被缓存在客户端。
我正在考虑一个常量 JS 文件,或者在极限情况下,一个带有 T4MVC 参数方法的常量 View 文件。
有更好的主意吗?
我在这里留下一个样本:
<script type="text/javascript">
$(function () {
$('#Category_Id')
.cascade(
{
url: '@Url.Action(MVC.Ad.ListCategoryTypeByCategory())',
paramName: '@MVC.Ad.ListCategoryTypeByCategoryParams.categoryId',
firstOption: '@HeelpResources.DropdownlistCategoryTypeFirstRecord',
childSelect: $('#CategoryType_Id')
})
.cascade(
{
url: '@Url.Action(MVC.Ad.ListMakeByCategory())',
paramName: '@MVC.Ad.ListMakeByCategoryParams.categoryId',
firstOption: '@HeelpResources.DropdownlistMakeFirstRecord',
childSelect: $('#Make_Id')
});
$('#Make_Id').cascade({
url: '@Url.Action(MVC.Ad.ListModelByMake())',
paramName: '@MVC.Ad.ListModelByMakeParams.makeId',
firstOption: '@HeelpResources.DropdownlistModelFirstRecord',
childSelect: $('#Model_Id')
});
});
</script>
如果我想将此代码放在 JS 外部文件中,如何避免“魔术字符串”?
谢谢。