C#怎么动态生成方法和Summary注释

C#怎么动态生成方法和Summary注释,第1张

C#中新建的类库添加注释时,应注意以下问题:

1、编译动态类库时命名空间要规范,一般不要和类同名,命名空间一般定义格式:项目名+类文件名;

2、动态类库中,类、方法的注释都采用下列方式注释:

类注释的格式:

///

<summary>

///

文件名:Ini处理类/

///

文件功能描述:读写Ini文件/

///

版权所有:Copyright

(C)

ZGM/

///

创建标识:2011.12.13/

///

修改标识:/

///

修改描述:/

///

</summary>

方法注释的格式:

///

<summary>

///

读出Ini文件

///

</summary>

///

<param

name="Section">Ini文件中的段落名称</param>

///

<param

name="Key">Ini文件中的关键字</param>

///

<param

name="IniFilePath">Ini文件的完整路径和名称</param>

///

<returns>Ini文件中关键字的数值</returns>

3、生成与动态类库相同名称的xml文件,具体设置是:项目右键—>属性—>生成—>XML文档文件选中再编译

4、引用动态类库时,把类库和同名的xml文件放到同一个文件夹内即可。

动态赋值指的是在配置文件配置好然后在项目中动态读取?如果是这样的话:

1.在xml文件中使用<context:property-placeholder location="”/>

这种方式可以读取location指定位置对应的文件,引用的话使用${key}可以获取对应的数据

和这种写法相同的还有

<bean class=“com.spring….config.PropertyPlaceholderConfigurer”>

<property name=“locations">

<array><value></value></array>

</property>

<bean>

这种是用bean来加载配置文件,看起来更直观

2.通过@Value注解读取配置

这种方法也需要预先在xml文件中设定好配置文件的位置

<bean id=“prop” class=“org.springframework.beans.factory.config.PropertiesFactoryBean”>

<property name=“locations”>

<array>

<value>classpath:.properties</value>

</array>

</property>

</bean>

之后在java代码里面可以用#{prop.key}来获取对应的数据prop是bean的名字,key是配置文件的键。

3.使用@PropertySource

在springboot中,可以不需要xml文件来设置配置文件,在需要使用配置文件的类名字前加上

@PropertySource(“locations")就可以读取指定位置的配置,在代码中使用@Value注解可以获取这些数据

@Value(value = “${key}”)

4.使用@ConfigurationProperties(prefix=“”)

SpringBoot项目有时候会使用application.yml来存储配置信息,一般情况下这些数据的存储格式是

a:

key1:value1

key2:value2

这种嵌套方式,当然可以多层嵌套

在需要使用配置文件的类上面使用@ConfigurationProperties(prefix=“a”)可以获取a标签下一层所有的配置的键值对。

有时候我们需要在不改变类的属性字段的情况下,添加字段,Jackson提供了@JsonAppend注解来实现这个功能,使用方式如下

通过上面的例子可以看到,@JsonAppend提供了两种方式来动态的添加虚拟字段

1 attrs

此种方式需要在序列化时候手动的添加Attribute,如下

om.writerFor(CombineJacksonAnnotation.JsonPropertyPojo.class).withAttribute("age","10").withAttribute("height","12")

2 props

此种方式比较灵活,但是要实现一个VirtualBeanPropertyWriter类即可,如果真的有这种需求,推荐使用第二种方式来实现


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11817023.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存