首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Entity Framework 怎么创建基类

2012-12-18 
Entity Framework 如何创建基类今天刚接触Entity Framework,确实在简单使用非常方便我现在有一个需求 将对

Entity Framework 如何创建基类
今天刚接触Entity Framework,确实在简单使用非常方便  
  我现在有一个需求 将对象的公共字段 如 id createDate 等 提取出来作为BaseEntity
  在xxxModelFirst.Designer.cs 的model对象继承这个BaseEntity



    public partial class BaseEntity : EntityObject
    {

        /// <summary>
        /// 没有元数据文档可用。
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = true, IsNullable = false)]
        [DataMemberAttribute()]
        public global::System.Int32 Id
        {
            get
            {
                return _Id;
            }
            set
            {
                if (_Id != value)
                {
                    OnIdChanging(value);
                    ReportPropertyChanging("Id");
                    _Id = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("Id");
                    OnIdChanged();
                }
            }
        }
        private global::System.Int32 _Id;
        partial void OnIdChanging(global::System.Int32 value);
        partial void OnIdChanged();

        /// <summary>
        /// 没有元数据文档可用。
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = false, IsNullable = false)]
        [DataMemberAttribute()]
        public global::System.Boolean Enable
        {
            get
            {
                return _Enable;
            }


            set
            {
                OnEnableChanging(value);
                ReportPropertyChanging("Enable");
                _Enable = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Enable");
                OnEnableChanged();
            }
        }
        private global::System.Boolean _Enable;
        partial void OnEnableChanging(global::System.Boolean value);
        partial void OnEnableChanged();

        /// <summary>
        /// 没有元数据文档可用。
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = false, IsNullable = true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
       
    }



在xxxModelFirst.Designer.cs  中继承EntityObject 改为 继承BaseEntity

可是在运行的时候会报错

指定的架构无效。错误: 

此类型“Model.GeographicInfo”没有任何键成员。RelationshipType 或 EntityType 必须要么带有键成员,要么带有包含键成员的 BaseType。


[解决办法]
一样建,只是要改下Entity设置,只加载id createDate 
[解决办法]
lz 可以尝试用CodeFirst 的方式来实现。
[解决办法]
CodeFirst 是先写model 然后在创建数据库吗?
  我晚上回去试一下 刚接触 有点陌生
[解决办法]

引用:
一样建,只是要改下Entity设置,只加载id createDate


Entity 设置怎么更改?

热点排行