1

如何ObjectContext.Metadata在运行时获取信息以查找对象上的属性映射到哪个表中的哪个列?

编辑:

如果这只适用于映射到一个且只有一个表的实体,我很高兴。

4

1 回答 1

0

这不使用元数据,但我是这样做的:)

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

    public static string GetFullTableName(this Type t)
    {

        string exp = "[{0}].[{1}]";

        if (Attribute.IsDefined(t, typeof(TableAttribute)))
        {
            var attr = (TableAttribute)t.GetCustomAttributes(typeof(TableAttribute), false).First();
            return string.Format(exp, attr.Schema, attr.Name);
        }
        else
        {
            return string.Format("[dbo].[{0}]", t.Name);
        }
    }
于 2015-12-19T12:54:32.017 回答