ローカルおよびリモートでアクセスできるように、基になる SQL Server ではなく WCF サービスによって供給されるデータ駆動型の Windows アプリケーションを設計しています。
上記の WCF は、ユーザー、在庫、顧客などを取得するための特定の機能を提供し、実際に次の行に沿って ADO 操作を実行します。
[OperationContract]
UserAdapter GetUserByWindowsIdentity(string Domain, string Account);
次のいずれかを返します。
[DataContract]
public class UserAdapter
{
[DataMember]
public int? ID;
[DataMember]
public string Domain;
[DataMember]
public string Account;
[DataMember]
public string Name;
}
WPF フロント エンド アプリケーションで WCF クライアントへの特定の参照を使用するのではなく、その間の別のレイヤーでさらにいくつかの機能を抽象化する必要があります。たとえば、WindowsIdentity を介したユーザー ログオンの検証は、データ レイヤーにもプレゼンテーションにも属しません。レイヤですが、中間のビジネス ロジック レイヤです。
これについてどうすればよいかわかりません。プレゼンテーション層で、次のようなことができるようにしたいと思います。
User.Login();
UserAdapterクラスに従って、Userオブジェクトがドメイン、アカウントなどの同じプロパティを抽象化しますが、データレイヤーから返されたオブジェクトをダウンキャストできないため、これをサブクラス化できません。
「チャック・イット・アウト」を含む、私がこれを取ることができる提案は非常に高く評価されます. 皆さん、ありがとうございました!