私はいくつかのプロジェクトを行っていますが、解決できるかどうかわからない問題に遭遇しました。だから私の問題は次のようなものです:
私のプロジェクトには4つのクラスがあります:
public abstract class ABaseDynamicLayer
{
public virtual int LayerID { get; set; }
public virtual string URIPath { get; set; }
}
public class RasterDynamicLayer : ABaseDynamicLayer
{
}
public class TerrainDynamicLayer : ABaseDynamicLayer
{
}
public class VectorDynamicLayer : ABaseDynamicLayer
{
}
今私のDBはそのようになります:
T_DYNAMIC_LAYERS
ID | URIPath | TYPE |
---------------------------
1 | c:\map1.mp | 1 |
2 | c:\map2.mp | 3 |
3 | c:\map5.mp | 2 |
T_TYPES
ID | DESCRIPTION |
---------------------
1 | Raster |
2 | Terrain |
3 | Vector |
今、私の目標は T_DYNAMIC_LAYERS を自分のプロジェクトにマップすることです。これを行う間、レイヤーのタイプを保存したくありません。代わりに、T_DYNAMIC_LAYERS に記載されているタイプとしてクラス リストからフィッティング オブジェクトを作成したいと考えています。
例えば:
T_DYNAMIC_LAYERS の最初の行をマッピングしているとします。1) ID 列を ID プロパティにマップします。2) URIPath 列を URIPath プロパティにマップします。
これは簡単ですが、必要な結果は、行のタイプが 1 (1 は RasterDynamicLayer に等しい) であるため、最初の行から RasterDynamicLayer のオブジェクトを取得することです。
それはできますか?できるとしたら、どうすればいいですか?
助けてくれてありがとう!