微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将aspx代码转换为razor

如何解决将aspx代码转换为razor

| 将以下telerik aspx代码转换为razor视图引擎时,我遇到很多麻烦。我遇到的错误是:\'CS1012:第一个输入按钮上的字符文字中的字符太多'。
     <% Html.Telerik().Grid(Model)
    .Name(\"Customers\")
    .DataKeys(dataKeys => dataKeys.Add(c => c.CustomerID))
    .Columns(columns =>
    {
        columns.Bound(c => c.CustomerID).Width(130);
        columns.Bound(c => c.CompanyName).Width(250);
        columns.Bound(c => c.ContactName);
        columns.Bound(c => c.Country).Width(200);
        columns.Template(c => {
            %> <input type=\'button\' value=\'Edit\' onclick=\"updateRecord(\'<%= c.CustomerID %>\')\" /> <%
            %> <input type=\'button\' value=\'Delete\' onclick=\"deleteRecord(\'<%= c.CustomerID %>\')\" /> <%
        }).Width(150);
    })
    .Pageable()
    .sortable()
    .Render();
%>
我的尝试如下:
    @{ Html.Telerik().Grid(Model)
    .Name(\"Grid\")
    .DataKeys(dataKeys => dataKeys.Add(c => c.Id))
    .Columns(columns =>
    {
        columns.Bound(o => o.PartNumber).Width(100);
        columns.Template(c => {
            } <input type=\'button\' value=\'Edit\' onclick=\"updateRecord(\'@c.Id\')\" /> @{
            } <input type=\'button\' value=\'Delete\' onclick=\"deleteRecord(\'@c.Id\')\" /> @{
        }).Width(150);
    })
    .Groupable()
    .sortable()
    .Pageable()
    .Filterable()
    .Render();
}
谢谢 瑞安

解决方法

您不能将HTML放在Razor中那样的表达式中。 而是使用内联模板:
    columns.Template(@<text>
        <input type=\'button\' value=\'Edit\' onclick=\"updateRecord(\'@item.Id\')\" /> 
        <input type=\'button\' value=\'Delete\' onclick=\"deleteRecord(\'@item.Id\')\" /> 
    </text>)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。