2013-04-11 49 views
0

我有一個部分類爲Entitiy框架類添加一些功能。 當我更改任何只屬於類的部分部分的屬性時,我想要RaiseEvent PropertyChanged。提高基類事件VB.NET實體框架部分類

我越來越: 派生類不能養基類的事件

Partial Class Person 
    Sub NotifyPropertyChanged(ByVal name As String) 
     RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(name)) 
    End Sub 
End Class 

就如何實現這一目標的任何想法?

回答

1

該問題與部分類無關。問題是,Person從另一個類派生,而你試圖從Person類中提高在基類中聲明的事件。

解決的辦法是在引發事件的基類中創建一個受保護的方法,並在person類中調用它。

+0

我怎麼會去這樣做,是不是從EF自動生成的基類?每當數據庫模式發生變化時,這會被覆蓋並重新生成文件? – DermFrench 2013-04-12 12:02:15

+0

是的,如果您在自動生成實體時使用了模型優先的方法,那麼您將很難向基類中添加任何功能。我不建議通過部分類向實體中添加非持久性屬性,而是建議將它包裝在不同的對象中。如果不知道更多關於你想解決的問題,很難說最好的解決方案是什麼。 – 2013-04-12 15:25:05

+0

我沒有使用模型優先,我從現有的數據庫生成模型。 – DermFrench 2013-04-12 15:30:30