T4 FieldName 采用驼峰命名法,不带下划线?

2024-01-28

我正在使用 T4 生成一些类定义,并发现我的字段名称前面有一个下划线。

我已经设定

code.CamelCaseFields = true;

只是为了安全起见(尽管我知道这是默认设置),但最终仍然是 _myField 而不是 myField。

如何生成不带“_”字符的字段名称?

另外,T4的文档在哪里?我发现了很多资源,例如

代码生成和文本模板 http://msdn.microsoft.com/en-us/library/bb126445(v=VS.100).aspx和许多博客,但我还没有找到逐个类、逐个属性的文档。


您可能正在谈论 EF4 自跟踪实体。这CodeGenerationTools类包含在<#@ include file="EF.Utility.CS.ttinclude"#>指令,您可以在“[VSInstallDir] \ Common7 \ IDE \ Extensions \ Microsoft \ Entity Framework Tools \ Templates \ Includes \ EF.Utility.CS.ttinclude”中找到该指令。

FieldName 函数定义如下:

private string FieldName(string name)
{
  if (CamelCaseFields)
  {
    return "_" + CamelCase(name);
  }
  else
  {
    return "_" + name;
  }
}

“_”是硬编码在函数中的。自己编写代码应该不难。请注意,CodeGenerationToolsclass 特定于此 ttinclude 文件,并不是在 T4 中生成代码的通用嵌入方式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

T4 FieldName 采用驼峰命名法,不带下划线? 的相关文章

随机推荐

  • 在 Android 上将 USB 波特率从 9600 更改为 115200

    我有一个 Arduino 它以 115200 波特率串行发送数据 有一个应用程序以 9600 波特率从 Arduino 接收数据 代码是 Arduino USB serial converter setup Set control line
  • Yii CGridView 超链接在新选项卡中打开

    我已经将我的 yii CGridview 的一栏作为超链接 但单击它后 它会在同一选项卡中打开链接地址 如何在新选项卡中打开链接地址 array header gt Name name gt name value gt CHtml link
  • 在 WinRT 应用程序中处理 2、3、4、5 个手指点击、双击和按住手势

    我可以轻松处理 1 根手指Tapped DoubleTap and Holding像这样的手势 public MainPage this InitializeComponent this Tapped mc Tapped this Doub
  • 如何旋转MKMapView并保持Annotation和视图不旋转?

    我正在制作一个显示用户当前位置的 MKMapView 我想像 Google 地图应用程序一样旋转地图 但不旋转注释 我使用以下代码 void locationManager CLLocationManager manager didUpda
  • 替换 msbuild 变量中的字符

    我需要替换要传递给 msbuild 4 中的 exec 任务的变量中的字符 具体来说 我需要替换所有出现的反斜杠 带有正斜杠 in the MSBuildProjectDirectory 多变的 eg
  • play2框架我的模板是没有看到的。 : 包views.html不存在

    问题是控制器看不到我想使用的模板 etl admin compile info 编译 3 个 Scala 源代码和 4 个 Java 源代码 来源 D ECLIPSE WORKSPACES play2 apps etl admin targ
  • 在谷歌地图图块上绘制形状文件[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一些形状文件想要在 Google 地图图块上绘制 做到这一点最有效的方法是什么 一种方法可能是使用 pkg RgoogleMaps
  • 如何传递手势选择器的参数

    我向标签添加了一个手势 当点击时我想触发 showlbl 它将以 int 作为参数 但是我收到一个编译器错误 UITapGestureRecognizer gestlbl0 UITapGestureRecognizer alloc init
  • Spring 视图不尊重 @UIScope 注释?

    我遇到 Vaadin spring 注释的问题 UIScope 定义如下 SpringComponent SpringView name AdminView VIEW NAME UIScope public class AdminView
  • Symfony 4 全局路由前缀

    我在 Symfony 4 应用程序中找不到有关全局路由前缀的任何信息 唯一的thing https symfony com blog new in symfony 3 4 prefix all controller route names我
  • ImportError:尝试导入祝福时没有名为“_curses”的模块

    我正在尝试运行这个 from blessings import Terminal t Terminal print t bold Hi there print t bold red on bright green It hurts my e
  • 处理不平衡问题后,数据高度倾斜,准确性下降

    在对数据进行预处理 例如缺失值替换和异常值检测 后 我使用随机化方法对数据进行分区 并使用 WEKA 删除百分比过滤器 我的数据集是一个高度倾斜的数据集 不平衡比为 6 1 对应于负类和正类 如果我使用朴素贝叶斯分类器对数据进行分类 而不处
  • TSQL:字符串错误的日期时间

    有一些与此相关的帖子 但我对 TSQL 很陌生 我无法理解它们 所以请原谅 我的程序有 BEGIN TRY INSERT INTO dbo myprocedure Mydate VALUES CONVERT DATETIME mydate
  • C# using 语句捕获错误

    我只是查看 using 语句 我一直知道它的作用 但直到现在还没有尝试使用它 我想出了以下代码 using SqlCommand cmd new SqlCommand reportDataSource new SqlConnection S
  • 调用远程ESB客户端错误

    我正在尝试从远程客户端发送和 esb 消息 但我不断收到此错误 org jboss soa esb listeners message MessageDeliverException org apache ws scout transpor
  • 如何使 Google Chrome 扩展示例正常工作?

    最近我决定编写一个非常简单的 Google Chrome 扩展 它要做的就是当用户按下扩展程序的按钮时 使用 JavaScript 从网页中隐藏一些 DOM 元素 由于我对 Chrome 扩展一无所知 所以我开始阅读教程 然后我发现了这个
  • 了解青春痘

    我不明白这个 DI容器 是如何使用的 官方网站上显示的示例没有告诉我任何信息 http pimple sensiolabs org http pimple sensiolabs org 基本上我有一个简单的站点 它由一组类组成 DB 类 C
  • Emacs:Tramp 不起作用

    我尝试通过 Emacs 通过 Tramp 打开远程文件 require tramp setq tramp default method ssh 我收到一条来自 Emacs 的消息 TRAMP 等待远程 shell 的提示 Emacs 挂起并
  • 如何从AVAudioEngine的installTap高频获取缓冲区

    我希望像 iOS 语音备忘录应用程序一样在屏幕上渲染音频波形 因此我使用 AVAudioEngine 并在输入节点上安装 Tap 但它以 0 1 秒的频率提供最快的回调 我需要以更快的频率获取缓冲区数据 以便可以在屏幕上绘制越来越多的波形
  • T4 FieldName 采用驼峰命名法,不带下划线?

    我正在使用 T4 生成一些类定义 并发现我的字段名称前面有一个下划线 我已经设定 code CamelCaseFields true 只是为了安全起见 尽管我知道这是默认设置 但最终仍然是 myField 而不是 myField 如何生成不