怎么得到Student 的summary的值?
public class Student
{
/// <summary>
/// Id
/// </summary>
public int ID { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 性别
/// </summary>
public string Sex { get; set; }
}
目前可以用 PropertyInfo 获取class 里的属性 属性对应的注释获取不到
想获得得到的效果
| Id | ID |
| 姓名 | Name |
| 性别 | Sex |
现在项目是数据库表结构没有字段说明 ,只有实体类有注释。 不能把所有实体类的注释都加上Description。
用正则表达式提取cs文件的字段说明,更新到数据库,再用原来的方式生成markdown文档行不?
可以使用组件Namotion.Reflection,同时需要在项目属性中开启生成xml启动项,如图:
示例代码如下:
using System;
using Namotion.Reflection;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
string studentSummary = typeof(Student).GetXmlDocsSummary();
Console.WriteLine(studentSummary);
var piList = typeof(Student).GetProperties();
foreach (var pi in piList)
{
var summary = pi.GetXmlDocsSummary();
Console.WriteLine($"{pi.Name}-->{summary}");
}
}
}
/// <summary>
/// 学生信息
/// </summary>
public class Student
{
/// <summary>
/// Id
/// </summary>
public int Id { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 性别
/// </summary>
public string Sex { get; set; }
}
}
支行效果如下:
学生信息
Id-->Id
Name-->姓名
Sex-->性别
Student student=new Student ();
student.ID='';
student.Name=‘’;
student.Sex=””;