1
我在服務器端用NHibernate查詢數據,然後創建一個WCF服務,它是發佈這些NHibernate對象的一個,它們被正確地序列化爲Silverlight,我在應用程序中修改它們,但是當我將它們發送回服務器時他們再次獲得serlialized和泛型列表被轉換到陣列,所以我不能在服務器端修改他們了......如何在WCF中將客戶端的通用列表傳遞給服務器?
這是我的類定義
public class BIMenu
{
public virtual Guid ID { get; set; }
public virtual String DisplayName { get; set; }
public virtual String ProgramToCall { get; set; }
public virtual IList<BIMenu> Children { get; set; }
public virtual IList<BISecurityProfile> SecurityProfiles { get; set; }
public virtual Boolean IsApplication
{
get
{
if (Children.Count < 1 && ProgramToCall != null)
return true;
return false;
}
}
public virtual Boolean IsFolder
{
get
{
return !IsApplication;
}
}
public BIMenu()
{
Children = new List<BIMenu>();
SecurityProfiles = new List<BISecurityProfile>();
}
}
,這是我的合同
[ServiceContract]
public interface IBISecurityService
{
[OperationContract]
BIMenu GetMenu(String Name);
[OperationContract]
void SaveMenu(BIOnline.Model.BIMenu Menu);
[OperationContract]
void DeleteMenu(BIOnline.Model.BIMenu Menu);
}