Lightswitch 2012 グリーンフィールド アプリケーションを開発しています。私は Lightswitch に非常に慣れていないため、私のアプローチは完全に間違っている可能性があります。
追加のユーザー詳細を提供する UserProfile テーブルがあり、必要に応じてユーザー データのクエリに使用する予定です。現在のユーザーの適切なレコードを検索する一般的な使用方法を追加したいと考えています。次のコードは、画面の 1 つがこの情報を消費する必要があるインラインです。
UserProfile myProfile;
{
var profiles = this.DataWorkspace.ApplicationData.UserProfiles;
string myDomainId = Application.User.Name;
myProfile = (from profile in profiles.OfType<UserProfile>()
where profile != null && profile.DomainId == myDomainId
select profile).FirstOrDefault<UserProfile>();
if (myProfile == null)
{
myProfile = profiles.AddNew();
myProfile.DomainId = myDomainId;
}
}
現在、このコードは、画面の 1 つで onsave ルーチンの 1 つで実行されます。これを一般的な使用のために GetCurrentUserProfile() メソッドにリファクタリングしたいと思います。最初にこれをアプリケーションに入れようとしましたが、コンテキスト エラーが発生しました。
そのメソッドを配置する適切な場所はどこですか?