【问题标题】:Asp.NET code render block formatting adds whitespaces inside data-bind propertyAsp.NET 代码渲染块格式在 data-bind 属性中添加空格
【发布时间】:2015-01-22 14:49:43
【问题描述】:

我在 Asp.NET 和 Visual Studio 中使用了 knockout.js(2012 年,但在 2010 年和 2013 年我遇到了同样的问题)。我的代码看起来像这样:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="Solution.ascx.Test" %>
<div>
    <span data-bind="value: '<%= String.Empty%>'"></span>
</div>

每次我粘贴此代码或按 ctrl+k、ctrl+d(格式文件)时,我都会在代码渲染块之后得到那些奇怪的空格。 (为了可见性在下面的sn-p中替换为XXXX)

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="Solution.ascx.Test" %>
<div>
    <span data-bind="value: '<%= String.Empty%>XXXX'"></span>
</div>

只有在使用“data-bind”标签时才会出现问题。

我尝试在客户端选项 > 文本编辑器 > HTML > 格式设置 > 标记特定选项 > HTML 标记 > 跨度中禁用“缩进内容”,但没有成功。有人对此有解决方案吗?不仅很烦人,而且knout还会解析那些空格并抛出异常。

【问题讨论】:

    标签: asp.net visual-studio knockout.js


    【解决方案1】:

    不是文本编辑器的格式问题,是-bind属性的问题。无论出于何种原因,VS 都不喜欢这样。自从阅读了这个问题以来,我已经在互联网上搜索过,但找不到任何好的理由。

    我确实发现,这可能是你最好的方法,有人在使用 MVC 时遇到了确切的问题:using @data-bind in ASP.NET MVC htmlAttributes throws exception

    只需使用 JQuery 将 data_bind 动态更改为 data-bind(如帖子中所述),您应该一切顺利。

    【讨论】:

    • 呃,添加客户端处理以避免来自 IDE 的错误并不是我所期望的那种解决方案。还是谢谢。
    猜你喜欢
    • 1970-01-01
    • 2015-02-11
    • 1970-01-01
    • 2018-08-03
    • 1970-01-01
    • 2021-07-13
    • 2015-09-16
    • 2014-04-20
    • 1970-01-01
    相关资源
    最近更新 更多