У нас есть проблема с объектами Entity Framework и отправка их через WCF. У нас есть база данных, и Entity Framework создала классы из этой базы данных, класс «Кошелек» в этой конкретной ситуации.Объекты обратной Entity Framework над WCF
Мы стараемся передать Кошелек, используя этот код:
public Wallet getWallet()
{
Wallet w = new Wallet();
w.name = "myname";
w.walletID = 123;
return w;
}
Мы должны передать этот класс Wallet, но это не будет работать, мы всегда сталкиваемся с тем же исключением:
«Ошибка произошел при получении ответа HTTP на localhost: 8860/ComplementaryCoins.svc. Это может быть связано с привязкой конечной точки службы, не использующей протокол HTTP. Это также может быть связано с тем, что сервер HTTP-запроса прерывается сервером (возможно, из-за выключение службы). Для получения более подробной информации см. журналы сервера. "
Мы искали в Интернете, и есть вероятность, что ошибка связана с необходимостью сериализации объектов Entity Framework.
У нас нет абсолютно никакой идеи, если это может быть так, и если это так, то как это решить. Наша DataContract выглядит следующим образом (очень простой):
[DataContract]
public partial class Wallet
{
[DataMember]
public int getwalletID { get { return walletID; } }
[DataMember]
public string getname { get { return name; } }
}
ли кто-нибудь сталкивался с такой проблемой?
EDIT: Наша 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; }
}
}
Спасибо за помощь нам.
Можете ли вы ** редактировать вопрос ** включить код, который возвращает 'Wallet' из службы WCF. Кроме того, это обозначается как «частичный» класс - есть ли еще одна половина? –
Частично, потому что, как я уже сказал, LINQ уже создал класс Кошелька из нашей базы данных. Я добавил код, который возвращает Кошелек. –
LINQ не может «создать класс Кошелька» - это язык запросов. Используете ли вы что-то вроде базы данных Entity Framework с базами данных или аналогичной ORM? –