bea*_*mes 5 razor visual-studio-2015
Visual Studio 2015的最新版本使我们的整个cshtml标记处于非常脆弱的状态.很多时候,我们的属性值超出了可用的宽度,我们需要将属性分成多行,以使代码更具可读性.
示例:wide data-bind
<div data-bind="someBinding: { hasErrors: bindingObject.HasErrors(duration), hasWarnings: bindingObject.HasWarnings(duration), parameterKey: bindingObject.SelectedObjectKey }, anotherBinding: value, anotherBinding2: value2, AndSoOn: yaddayadda.the.point.is.this.can.get.really.long">
Run Code Online (Sandbox Code Playgroud)
回到VS 2010/2013,如果我们开始只将回车符放在属性值中以便将其分解,那么设计人员通常不会再适当地解析html,并且此后的DOM元素将不再有效...例如损坏的表.
因此我们发现通过将属性值封装在@("...")中实际上可以让设计人员顺利运行.
示例:使用@()属性绑定
<div data-bind="@("someBinding: { " +
"hasErrors: bindingObject.HasErrors(duration), " +
"hasWarnings: bindingObject.HasWarnings(duration), " +
"parameterKey: bindingObject.SelectedObjectKey }, " +
"anotherBinding: value, " +
"anotherBinding2: value2, " +
"AndSoOn: yaddayadda.the.point.is.this.can.get.really.long")">
Run Code Online (Sandbox Code Playgroud)
好吧,这里的好消息是IDE甚至可以帮助扩展这个字符串,当页面重新格式化时,它会很高兴并且DOM很好.服务器将采用这个C#字符串并将其渲染为生产中的单行,一切都很好......
直到我们升级.VS2015似乎很讨厌这个,但原因完全不同.现在,它整个事情都是曲折的,工具提示上写着"遗失属性名称".当页面重新格式化时,它会破坏一切......
所以我在这里走在玻璃上.这是某种错误还是有答案,因为我们有一个很大的代码库,不想重构这个属性格式.
思考?
| 归档时间: |
|
| 查看次数: |
353 次 |
| 最近记录: |