1

私は自分が取り組んでいる小さなプロジェクトにPetaPocoを使用して実験してきましたが、これまでのところ素晴らしいものです。

以下の例に示すように、さまざまな計算値を保持するために、自動生成されない追加の部分クラスをいくつか作成しました。これらの追加のプロパティをWCF応答にシリアル化することはできませんが、自動生成されたもののすべてのプロパティは問題なくシリアル化されます。これらのカスタムプロパティで[Serializable]と[DataContract]を使用しようとしましたが、WCFサービスが完全に機能しなくなります。

何か案は?

public partial class Session
    {
        [ResultColumn]
        public int ConnectedUserCount
        {
            get
            {
                AssistedServiceDB db = new AssistedServiceDB();
                return db.ExecuteScalar<int>("SELECT Count(*) FROM Session_AssistedServiceUser WHERE IsConnected = 1");
            }
        }  
4

1 に答える 1

1

部分的なWCFDataContractsを機能させるために確認すべきことがいくつかあります。まず、他のSessionクラスがthenでマークされているDataContract場合、このクラスも同じ方法でマークする必要があります。これは、ResultSessionクラスもシリアル化可能であるか、および/またはとしてマークされていることを前提としていDataContractます。もう1つの問題は、WCFではプロパティに少なくともプライベートセッターが必要であるため、ConnectedUserCountプロパティを変更して1つにする必要があることです。

于 2012-03-12T17:45:09.813 に答える