2章 準備勉強
2.3 C#で制作されたモデルのDLLを取り込む
前節で作成したDLLにFactoryクラスを組み込みます。 先ず親クラスDLL:RiverModelDLL に Factoryクラスの親クラスを追加します。 Factoryクラスには、モデルクラス生成メソッドと、プロパティ情報生成メソッドが必要です。 また複数のFactoryクラスを区別するためにID番号をつけておきます。
namespace RiverModelDLL { public class MdlFactory { /// <summary>ID番号取得</summary> /// <returns>ID番号</returns> public virtual long GetIDNo() { return 0; } /// <summary>モデルインスタンス生成</summary> /// <returns>RiverModel</returns> public virtual RiverModel CreateModel() { return new RiverModel(); } /// <summary>モデルインスタンス生成</summary> /// <returns>RiverModel</returns> public virtual PrptyInf CreateProperty() { return new PrptyInf(); } } } |
namespace DynamicWaveLine { public class DynamicWaveFactory : MdlFactory { /// <summary>ID番号取得</summary> /// <returns>ID番号</returns> public override long GetIDNo() { return 1; } /// <summary>モデルインスタンス生成</summary> /// <returns>RiverModel</returns> public override RiverModel CreateModel() { return new DynamicWaveModel(); } /// <summary>モデルインスタンス生成</summary> /// <returns>RiverModel</returns> public override PrptyInf CreateProperty() { return new DynamicWavePrptyInf(); } } } |
namespace _MY_SYSTEM_ { public class FACTORY_CREATOR { public RiverModelDLL.MdlFactory CreateFactory() { // ToDo 自作のモデルファクトリ(ネームスペース付き)を new して下さい。 return new DynamicWaveLine.DynamicWaveFactory(); } } } |
namespace ModelMain //
プロパティ情報を設定 |
初版:2013/06/12 |