博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EF 中获取 TableAttribute的值,即数据库中真实的表名
阅读量:5246 次
发布时间:2019-06-14

本文共 874 字,大约阅读时间需要 2 分钟。

 

比如EF中我定义了这样一个实体:

 

[csharp]
 
  1. [Table(Name = "MyTableName")]  
  2. public class MyClass  
  3. {  
  4. }  
[Table(Name = "MyTableName")]    public class MyClass    {    }

 

现我想获取 MyTableName,可以这样来办:

 

[csharp]
 
  1. using System.Data.Linq.Mapping;  
  2.   
  3. namespace MyEF  
  4. {  
  5.     class Program  
  6.     {  
  7.         static void Main(string[] args)  
  8.         {  
  9.             string name = typeof(MyClass).GetAttributeValue((TableAttribute ta) => ta.Name);  
  10.             Console.WriteLine(name);  
  11.   
  12.             Console.Read();  
  13.         }  
  14.     }  
  15.   
  16.     public static class AttributeExtensions  
  17.     {  
  18.         public static TValue GetAttributeValue<TAttribute, TValue>(  
  19.             this Type type,  
  20.             Func<TAttribute, TValue> valueSelector)  
  21.             where TAttribute : Attribute  
  22.         {  
  23.             var att = type.GetCustomAttributes(  
  24.                 typeof(TAttribute), true  
  25.             ).FirstOrDefault() as TAttribute;  
  26.             if (att != null)  
  27.             {  
  28.                 return valueSelector(att);  
  29.             }  
  30.             return default(TValue);  
  31.         }  
  32.     }  
  33.   
  34.     [Table(Name = "MyTableName")]  
  35.     public class MyClass  
  36.     {  
  37.     }  
  38. }  

转载于:https://www.cnblogs.com/lvdongjie/p/5561723.html

你可能感兴趣的文章
Leetcode 112 Path Sum
查看>>
反编译
查看>>
技能要求
查看>>
linux按位运算
查看>>
生成二维码图形
查看>>
Binary Tree Level Order Traversal II(层序遍历2)
查看>>
日志解析(一) 大文件遍历
查看>>
301 和 302 区别? 304 含义?304 原理?501 和 502 区别?
查看>>
iOS开发~Axure学习资料
查看>>
C# WinfForm 控件之dev报表 XtraReport (七)报表合并
查看>>
OFDM时域削峰法降峰均比的原理及影响
查看>>
仔细看 那里错了!!!!!!!!!!!!!!1
查看>>
视频压缩:I帧、P帧、B帧
查看>>
自娱自乐之选择排序
查看>>
课程总结
查看>>
MongoDB本地安装与启用(windows )
查看>>
JavaWeb之搭建自己的MVC框架(二)
查看>>
python函数学习之字符串函数
查看>>
IMAQ Flatten Image to String VI的参数设置对比
查看>>
robotframework-requests--中文注解版
查看>>