EntityFrameworkオブジェクトとそれらをWCF経由で送信することに関して問題があります。データベースがあり、Entity Frameworkはそのデータベースからクラスを作成しました。この特定の状況では、「ウォレット」クラスです。
次のコードを使用してウォレットを転送しようとします。
public Wallet getWallet()
{
Wallet w = new Wallet();
w.name = "myname";
w.walletID = 123;
return w;
}
そのWalletクラスを転送する必要がありますが、機能しません。常に同じ例外が発生します。
「localhost:8860 / ComplementaryCoins.svcへのHTTP応答の受信中にエラーが発生しました。これは、サービスエンドポイントのバインディングがHTTPプロトコルを使用していないことが原因である可能性があります。これは、HTTP要求コンテキストがサーバーによって中止されていることが原因である可能性もあります(おそらくサービスがシャットダウンしたためです。詳細については、サーバーログを参照してください。」
インターネットで検索したところ、EntityFramework-objectsのシリアル化が必要なためにエラーが発生した可能性があります。
これが当てはまるかどうか、もしそうなら、それをどのように解決するかはまったくわかりません。DataContractは次のようになります(非常に単純です):
[DataContract]
public partial class Wallet
{
[DataMember]
public int getwalletID { get { return walletID; } }
[DataMember]
public string getname { get { return name; } }
}
誰かがこの問題に遭遇したことがありますか?
編集:Entity Frameworkで作成されたクラスは次のようになります:
namespace ComplementaryCoins
{
using System;
using System.Collections.Generic;
public partial class Wallet
{
public Wallet()
{
this.Transaction = new HashSet<Transaction>();
this.Transaction1 = new HashSet<Transaction>();
this.User_Wallet = new HashSet<User_Wallet>();
this.Wallet_Item = new HashSet<Wallet_Item>();
}
public int walletID { get; set; }
public string name { get; set; }
public virtual ICollection<Transaction> Transaction { get; set; }
public virtual ICollection<Transaction> Transaction1 { get; set; }
public virtual ICollection<User_Wallet> User_Wallet { get; set; }
public virtual ICollection<Wallet_Item> Wallet_Item { get; set; }
}
}
私たちを助けてくれてありがとう。