2010-11-22 7 views
0

Nach der Generierung von Datacontext-Klasse aus meiner DB habe ich CMCoreDataClassesDataContext Klasse bekommt.Linq2sql: Wie "erben" Datenkontext von benutzerdefinierten Schnittstelle?

Für Komponententests Zweck würde ich diese Klasse mag meine spezielle Schnittstelle zu implementieren, ICMCoreDataClassesDataContext. Ich könnte die Klasse designer.cs ändern, aber sie muss jedes Mal aktualisiert werden, wenn sie neu generiert wird.

Gibt es eine Lösung, die als automatisch generierte Klasse markieren kann von meiner Schnittstelle vererbt werden? Ich sehe die Möglichkeit, Basisklasse zu ändern, aber wie kann ich 'Basis' Schnittstelle angeben?

P.S. Ist es eine Option, eine Basisklasse zu erstellen, die von System.Data.Linq.DataContext UND meiner Schnittstelle geerbt wird (ICMCoreDataClassesDataContext) und sie als Basisklasse für eine automatisch generierte Klasse angibt? Es funktioniert nicht, weil die erforderlichen Methoden in der Basisklasse als abstrakt deklariert werden müssen (das ist OK) und sie in generated mit "override" markieren.

P.S. .NET 3.5, Linq2Sql

Antwort

3

Die erzeugte Datacontext ist ein partial class. Sie können eine separate CS-Datei mit den folgenden hinzufügen:

public partial class MyDataContext : IMyInterface 
{} 
+0

Genau! Ich habe es schon vorher gemacht und hab dieses tecnich schon vergessen :) – Budda

Verwandte Themen