ASP.NET MVC2でモデルクラスのインターフェイスを作成しようとしていますが、別のインターフェイス内でList<interface>
を使用できるかどうかは疑問です。私がコード例を挙げると良いでしょう。リスト<interface>を別のインターフェイス内に使用するC#
私は2つのインターフェースを持っています。端末は複数のベイを持つことができます。だから私は以下のような私のインターフェイスを記述する。
ベイインタフェース:
public interface IBay
{
// Properties
int id {get; set;}
string name {get;set;}
// ... other properties
}
端末インタフェース:
public interface ITerminal
{
// Properties
int id {get;set;}
string name {get;set;}
// ... other properties
List<IBay> bays {get;set;}
}
私の質問は、私は、私はベイのリストを設定するには、どのようにこれらのインタフェースに基づいて私のクラスを実装する場合です。私は、ITerminalインターフェイスの外側と具体的な実装の内側にベイのリストを作成する必要がありますか?
具体的な実装:
ベイクラス:
class Bay : IBay
{
// Constructor
public Bay()
{
// ... constructor
}
}
ターミナルクラス:その後、
class Terminal : ITerminal
{
// Constructor
public Terminal()
{
// ... constructor
}
}
そして
がアクセスできる私の目標は、次の操作を行うことができるようにすることですこのようなベイのリスト
Terminal.Bays
ご協力いただきありがとうございます。
ベイは「IList」でなければならないという一般的な設計提案以外は、コードは上手く見えます。それについての何かがうまくいかないのですか? –
申し訳ありませんがわかりません。 ITerminalインターフェイスは、ターミナルオブジェクトに 'Bays'アクセサを追加する必要があることを意味し、' List 'を作成して' Bay'オブジェクトを追加してアクセサに戻すことができます。あるいは 'List 'を 'List 'として返すように設定する方法を意味しますか? –
Rup
@ChrisShain:これはもっと構造的な質問とベストプラクティスでした。 – Gnex