■92252 / ) |
Re[3]: メソッド内の一部のみ派生したクラスに変えたい |
□投稿者/ tro (28回)-(2019/09/05(Thu) 11:24:43)
|
2019/09/05(Thu) 11:27:00 編集(投稿者) 2019/09/05(Thu) 11:26:07 編集(投稿者)
<pre><pre>返信ありがとうございます。
>この2種類の Func() は外的にはどういう風に区別される想定なのでしょうか? 基底クラスを使用するFunc()はアプリA、派生クラスを使用するFunc()はアプリBで使用するという形になっています。 基底クラス、及び基底クラスを使用するFunc()はアプリA、Bの共通dllに存在します。
>一つに統一というのは、内部的にフラグなどで切り分けたいということでしょうか? 従って共通のdllからは派生先のクラスは使用できませんので、フラグでの切り分けはできません。
ソースコードの文法ミスがあり申し訳ございません。 改めて書き直しました。
・基底クラス(アプリA、B共通、実際にはアプリAのみ使用) public class TestBase { public string ValueCommon {get; set;} }
・派生クラス(アプリBのみ) public class TestA : TestBase { public string ValueA {get; set;} }
・基底クラスを使用するメソッド(アプリA、B共通、実際にはアプリAのみ使用) public virtual void Func() { TestBase testBase = new TestBase { ValueCommon = "Test" }; }
・派生クラスを使用するメソッド(アプリBのみ) public override void Func() { TestA testA = new TestA { ValueCommon = "Test" }; }</pre></pre>
|
|