1

Windows 8 プログラミングでタイヤを地面に置くのに多くの問題があります。

問題の 1 つは、Windows 8 で IIS をインストールできないことです。これは、Windows 8 を 7 とデュアル ブートしているためです。IIS の追加などの構成変更を含め、OS の更新はすべて失敗します。

とにかく、これを回避するために、TCP エンドポイントを使用して Windows サービスで WCF サービスをホストし、そのサービスをストア アプリで使用することにしました。インサートの場合、問題なく機能します。

しかし、いくつかのデータ (非常に小さなデータ セット - 3 レコード) を取得しようとすると、次のエラーが表示されます。これは、コントラクトの不一致、時期尚早のセッション シャットダウン、または内部サーバー エラーが原因である可能性があります

私はそのエラーをグーグルで検索しましたが、それは一般的なエラーのようです。つまり、何でもかまいません。しかし、私はWCFの初心者です。

ViewModel の私のコードは単純です:

    private async void PopulatePeople()
    {
        var people = await licenceBucketService.GetAllPersonsAsync();

        FirstName = people.First().FirstName;
        LastName = people.First().LastName;
    }

GetAllPersons メソッドは次のとおりです。

public ObservableCollection<Person> GetAllPersons()
{
    ObservableCollection<Person> people = null;

    using (var context = new LicenceBucketContext())
    {
         people = new ObservableCollection<Person>(context.People);
    }

    return people;
}

Reference.cs ファイルの非同期バージョンは次のようになります。

public System.Threading.Tasks.Task<System.Collections.ObjectModel.ObservableCollection<Win8UI.LicenceBucketService.Person>> GetAllPersonsAsync() {
        return base.Channel.GetAllPersonsAsync();
    } 

WCF の専門家は私の問題を認識していますか?

4

0 に答える 0