2009-08-04 11 views
0

私は自分のブログのコアエンジンを構築しており、非常に簡単に拡張したいと考えています。現時点で は私のコードは次のようになります。Linq to sql - 派生クラスの継承マッピングを定義する

[Table(Name = "dbo.ContentItem")] 
[InheritanceMapping(Code = "MyNameSpace.Items.SysRoot", Type = typeof(SysRoot), IsDefault = true)] 
[InheritanceMapping(Code = "MyNameSpace.Items.SysRecycleBin", Type = typeof(SysRecycleBin))] 
public partial class ContentItem : ICloneable, INotifyPropertyChanging, INotifyPropertyChanged { 
// some code here 
} 

上記のコードは、私のコア事業であると、私は例えば、このようなクラスにinheritancemapping属性を追加することによって、私のブログのプロジェクトに新しいpagetypesをマッピングしたいと思います:

[InheritanceMapping(Code = "MyNamespace.Blog.Items.BlogPostContainer", Type = typeof(BlogPostConntainer))] 
    public partial class BlogPostContainer : ContentItem { 
// some code here 
} 

これは機能しないので、誰かがこの問題の解決策を持っているのだろうかと思いますか?おそらく、外部XMLファイルにマッピングを記述して、プロジェクト間の継承を機能させることは可能でしょうか?

答えて

0
+0

私はそれを試みましたが、私はxmlベースのマッピングを使用していましたが、私の城のwindsorコンテナは動作を停止します。 xmlベースのマッピングでcastle windsorを使用することが可能かどうか知っていますか? – Marcus

+0

XMLベースのマッピングを使用すると、メンバーにSQLへの変換がサポートされていないという別のエラーが発生しますか? 私のマッピングファイルはそのメンバーのためにこのように見える Marcus

+0

。私は個人的にNHibernateを使用して、これはlinqよりSQLで動作する方がはるかに簡単であることがわかっています。もしあなたがスイッチを作ることができたら私はそうするでしょう。 – Castrohenge

0

に私は私のマッピングファイルに多少の誤差をしていたし、今ではそのようなXML-マッピングとかせずにこの作業を取得するために良いはずですけれども、それはOKに動作しますが、私はそれがあると思いますこれに対する他の解決策はありません。

関連する問題