我有一堆強類型的數據集,每個都有兩個表。每個DataSet有一個表是唯一的,但第二個「MetaData」對每個DataSet具有相同的模式。是否可以將接口添加到.NET中的強類型數據集?
在運行時,我確定要使用哪個DataSet,並以適當的方式從數據庫填充數據表。
然後我想填充元數據表。這將以相同的方式完成每個DataSet,所以我想使用相同的代碼。這樣做的一個顯而易見的方法是讓每個DataSet實現一個可以完成工作的接口。
問題出現在我想爲這些數據集聲明這個接口(IMyInterface)。
每個強類型的DataSet都包含大量文件。第一個關鍵文件是MyDataSet.Designer.cs文件...這是一個自動生成的文件。有附近開始這樣一行:
public partial class MyDataSet : global::System.Data.DataSet
我可以在此之後添加我的界面,但我有充分的理由相信,它可能/將被消滅時,該文件再生。
如果我告訴VS我想編輯DataSet的代碼,它會爲我創建一個名爲MyDataSet.cs的新文件。但在那裏的聲明如下所示:
partial class MyDataSet
如果我試圖接口添加到這個像這樣:
partial class MyDataSet : IMyInterface
它看起來像我嘗試添加一個子類。
處理這個問題的正確方法是什麼?更改設計器文件,並確保VS不會重新生成它?將超類和接口聲明添加到另一個文件中?還有其他的東西嗎?