如果我有一个标记为a的类DataContract和一些标记有DataMember属性的属性,我可以轻松地将其序列化为XML,但它会创建如下的输出:
<Person>
<Name>John Smith</Name>
<Email>john.smith@acme.com</Email>
<Phone>123-123-1234</Phone>
</Person>
Run Code Online (Sandbox Code Playgroud)
我更喜欢的是属性,比如......
<Person Name="John Smith" Email="john.smith@acme.com" Phone="123-123-1234" />
Run Code Online (Sandbox Code Playgroud)
该DataMember属性允许我控制名称和顺序,但不能控制它是否被序列化为元素或属性.我环顾四周找到了DataContractFormat,IXmlSerializable但我希望有更简单的解决方案.
最简单的方法是什么?
在定义WCF数据协定时,应该使用哪种类型的集合/列表?
我有一个简单的类我正在序列化.
[DataContract(Name = "Test", Namespace = "")]
public class Test
{
[DataMember(Order = 0, Name = "Text")]
public string Text { get; set; }
public Test() {}
}
Run Code Online (Sandbox Code Playgroud)
这将启动以下XML:
<Test>
<Text>Text here</Text>
</Test>
Run Code Online (Sandbox Code Playgroud)
我想要的是:
<Test>
<Text type="MyType">Text here</Text>
</Test>
Run Code Online (Sandbox Code Playgroud)
如何添加XML元素的属性?
提前致谢.
我正在编写一个序列化函数,需要确定类是否具有DataContract属性.基本上,如果类具有DataContract属性,函数将使用DataContractSerializer,否则它将使用XmlSerializer.
谢谢你的帮助!
我理解什么是属性IsReference以及它正在做什么.但我不明白为什么/当我应该不使用它.什么时候使用IsReference = true是个坏主意?
如果我的wcf服务是.net到.net,是否有充分的理由不设置IsReference = true?
我有两个数据类,只保存数据成员(没有函数).一个是CallTask,另一个是SmsTask.这两个类有一些常见的属性,如ID,Tel.我将这些常见属性放在一个单独的接口类中,并在适当的时候在我的项目中使用此接口类.
现在我在我的项目中添加了一个WCFService,以便在客户端和服务器之间共享数据.考虑以下课程设计:
public interface IGsmTask : IComparable
{
string TaskID { get; set; }
string SessionID { get; set; }
string Tel { get; set; }
}
class CallTask : IGsmTask
{
#region IGsmTask Members
public string TaskID { get; set; }
public string SessionID { get; set; }
public string Tel { get; set; }
#endregion
}
class SmsTask : IGsmTask
{
#region IGsmTask Members
public string TaskID { get; set; …Run Code Online (Sandbox Code Playgroud) 我正在开发一个WCF服务,它将由多个不同的客户端应用程序使用.为了使一个功能起作用,服务器需要将XML文件读入C#DataContract,然后将其传递给相关的客户端.据我所知,从MSDN网站,这是可能的,但我找不到任何完整的例子.特别是,该网站谈到了一个"流"参数,我还没有完成.
我的数据协定有一个属性字段,它是另一个具有多个简单属性字段的数据协定的列表.
例如
[DataContract]
public class MyClass1 {
[DataMember]
public string name;
[DataMember]
public int age;
}
[DataContract]
public class MyClass2 {
[DataMember]
public List<MyClass1> myClass1List;
}
Run Code Online (Sandbox Code Playgroud)
我的课看起来像这样.
我有一个为内部客户端托管的WCF服务 - 我们可以控制所有客户端.因此,我们将使用数据协定库来否定代理生成的需要.我想使用一些readonly属性,并有一些没有默认构造函数的datacontracts.谢谢你的帮助...
我想DataMember在我DataContract的一个中添加一个.我想知道DataMember如果没有更新其中一方,现有服务器和客户端将如何在新的情况下运行.
我记得有一种方法可以DataMember选择,但我想知道它是否适用于所有场景:
我正在使用typescript处理应用程序的UI.与此同时,其他人也在为我提供数据.我们就数据合同达成了一致意见,但是这个过程很容易出错,我不断从服务器获取无效的数据对象.所以我的问题是我可以使用typescript中定义的一些接口以某种方式验证动态对象(在运行时)吗?
这个问题是在2012年提出的,因此它不能重复检查一个对象是否在运行时使用 2015年提出的TypeScript实现了一个接口.
datacontract ×10
wcf ×6
.net ×5
c# ×4
ajax ×1
datamember ×1
isrequired ×1
serializer ×1
typescript ×1
validation ×1