将视图添加到LinqToSql图表不会创建方法/属性

时间:2013-01-25 23:28:48

标签: visual-studio-2010 linq-to-sql

我正在使用VS 2010和LinqToSql。当我将视图拖到图表上并设置我的关系时,XML会更新,但是类不会使用支持方法和属性进行更新。

在我这样做之前,我会得到一个这样的房产:

    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Question_QuestionAggregatesView", Storage="_QuestionAggregatesView", ThisKey="Id", OtherKey="Id", IsUnique=true, IsForeignKey=false)]
    [global::System.Runtime.Serialization.DataMemberAttribute(Order=38, EmitDefaultValue=false)]
    public QuestionAggregatesView QuestionAggregates
    {
        get
        {
            if ((this.serializing 
                        && (this._QuestionAggregatesView.HasLoadedOrAssignedValue == false)))
            {
                return null;
            }
            return this._QuestionAggregatesView.Entity;
        }
        set
        {
            QuestionAggregatesView previousValue = this._QuestionAggregatesView.Entity;
            if (((previousValue != value) 
                        || (this._QuestionAggregatesView.HasLoadedOrAssignedValue == false)))
            {
                this.SendPropertyChanging();
                if ((previousValue != null))
                {
                    this._QuestionAggregatesView.Entity = null;
                    previousValue.Question = null;
                }
                this._QuestionAggregatesView.Entity = value;
                if ((value != null))
                {
                    value.Question = this;
                }
                this.SendPropertyChanged("QuestionAggregates");
            }
        }
    }

但是LinqToSql没有为我新添加的视图创建这种类型的属性。

这是VS2010中的错误还是我做错了什么?

非常感谢!!

1 个答案:

答案 0 :(得分:0)

在一些复杂的搜索引擎查询操作之后找到答案:

http://www.bartlannoeye.com/blog/linq-to-sql-not-generating-code-for-association

感谢Bart Lannoeye的有用帖子。简而言之,因为我在图中添加了一个视图,所以默认情况下没有添加主键。我必须在图中指定视图的主键,之后一切正常。