Optional:设置这个属性是否是必须的,设置为True则这个参数必须有值,设置为False则表明这个参数值可有可无。
此句翻译错误
Optional:设置这个属性是否是可选的,设置为True则这个参数值是可选的,设置为False则表明这个参数值是必须的。
刚好翻译反了。
@涤生
呵呵,多谢指正,我又试了下,确实如你所说:)原文我已改正
Optional
这个我还是有点不解,
设置为False则表明这个参数值是必须的,
当为False时,在Studio中Tools-Run(F5),提示必须填写,
但是在 Template Explorer 中选择模板,execute 时,却没有任何提示。
晕!
@libra163
确实没有提示,但是如果你不在属性面板中输入其相应的值时,点生成按钮“Generate”时才会提示需要输入值:)我又试了下,是这个样子的
感谢你和Terrylee提供的CodeSmith开发资料
关于本文中提到的Category和Type
Category是在属性面板中陈列属性时用来分"类"的
Type才是"用来说明这个属性在CodeSmith Explorer的属性面板中显示成什么类型,例如下拉选择、直接输入等"
@Anderslly
如你所说,是这样的,多谢指正:)
Serializer:The serializer parameter specifies the IPropertySerializer type to use when serializing the properties values. This is equivalent to using a [PropertySerializerAttribute].
串行化器:串行化器参数用于指定 IPropertySerializer 接口类型,它被用于在序列化此属性值时调用。这个参数等效于在属性上使用.net的定制属性[PropertySerializerAttribute]。
说白了,比如你的这个对象要通过序列化在WebService里使用,你需要给某个自定义的变量指明串行化器。
@熊熊
我用SourceTable.Columns[i].SystemType取出来的都是这样的:
System.Int32 id,System.String billno,System.String? GOODSCODE,System.String? goodsclass,System.Decimal? bagnum
前面有system.要用什么属性取出来的才是:
Int id,String billno,String? GOODSCODE,String? goodsclass,Decimal? bagnum
@努力学习的熊
有一点不太明白,我使用了:
<%@ Property Name="SourceTables" Type="SchemaExplorer.TableSchemaCollection" Category="Context" Description="Tables that the object is based on." %>
并没有用到Optional 但是执行的时候也会提示是必须的
@seyon
因为生成的代码其实都是放到一个文件中的字符串,我们是这样作的,自定义一个处理类,枚举了所有C#中的类和CodeSmith中的对应,以及对应到SQLServer中的类型,然后处理出相应的字符串作为输出。不知这样说你是否明白:)
@tmpCoder
如果是这样的情况,可能默认是必须的:)