c# - 自定义 Razor Html 属性

标签 c# html asp.net-mvc razor

使用 Razor html 帮助程序,添加自定义 html 属性似乎做得很差。

我正在编写支付网关集成,需要在客户端加密卡详细信息。

典型的表单域看起来像

  <input type="text" data-eway-encrypt-name="EWAY_CARDNUMBER" />

我试图用

复制它
@Html.TextBoxFor(m => m.Card.CardNumber, new { @class = "form-control", @data-eway-encrypt-name = "EWAY_CARDNUMBER" })

但没有运气,因为它会返回

CS0746: Invalid anonymous type member declarator. Anonymous type members must be declared with a member assignment, simple name or member access.

有什么想法吗?

最佳答案

属性名称中不能有破折号。请改用下划线,它们会自动为您转换:

@Html.TextBoxFor(
    m => m.Card.CardNumber, new 
    { 
        @class = "form-control", 
        //@data-eway-encrypt-name = "EWAY_CARDNUMBER",
        data_eway_encrypt_name = "EWAY_CARDNUMBER",
    })

关于c# - 自定义 Razor Html 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32167499/

相关文章:

c# - 命名空间 'Hosting' 中不存在类型或命名空间名称 'Microsoft.AspNetCore.Razor'

c# - 获取Response后Json解析错误

javascript - HTML5 本地存储回退

php - 如何将我的 session 数组存储到我的数据库中

javascript - 如何用另一个元素包装html中的所有文本?

c# - 使用 ImageResizer.net 验证图像上传

C#/MongoDB反序列化字典数组数组

c# - XobotOS:为什么 C# 二叉树基准测试使用结构?

c# - 如何优雅地卸载有线程运行的子 AppDomain

asp.net-mvc - 如何为 Azure webrole 提供多个自定义发布配置文件