Tag: 序列化

在XMLSerializer的构造函数中发生了第一次机会exception

可能重复: XmlSerializer在构造函数中给出FileNotFoundException 当我使用XMLSerializer时,我收到了第一次机会exception, XMLSerializer xml = new XMLSerializer(typeof(A)) mscorlib.dll中发生了’System.IO.FileNotFoundException’类型的第一次机会exception 附加信息:无法加载文件或程序集“A.XmlSerializers,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。 该系统找不到指定的文件。 没关系,但调试时很烦人。 是什么原因?

使用c#代码动态创建javascript数组

我正在将旧的经典ASP站点更新为新的.net 3.5版本。 该页面有一个自定义列表控件,客户端(我的老板)想要保留。 此列表控件需要多个数组才能正常工作。 该数组是一个多维的出版物清单。 这就是它的样子: var publicationTable = [ [31422,”Abilene Reporter News”,”Abilene”,”TX”,false,”D”,0], [313844,”Acadiana Weekly”,”Opelousas”,”LA”,false,”W”,1], [527825,”Action Advertiser”,”Fond du Lac”,”WI”,false,”W”,2]…n] 我想生成这个arrays服务器端并注册它。 我看过msdn,但这有点小事。 概念问题是数组是字符串和整数的混合,我不知道如何重新创建这个,所以如何?

序列化和版本控制

我需要将一些数据序列化为字符串。 然后将该字符串存储在特殊列SerializeData中的DB中。 我创建了用于序列化的特殊类。 [Serializable] public class SerializableContingentOrder { public Guid SomeGuidData { get; set; } public decimal SomeDecimalData { get; set; } public MyEnumerationType1 EnumData1 { get; set; } } 连载: protected override string Serialize() { SerializableContingentOrder sco = new SerializableContingentOrder(this); MemoryStream ms = new MemoryStream(); SoapFormatter sf = new SoapFormatter(); sf.Serialize(ms, sco); string data […]

在WCF服务中覆盖ToString方法

这是我的服务生成类: public partial class MyClass : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { } 我正在使用自己的服务。 在MyClass我覆盖了ToString()但我的客户端没有。 我想要生成它或者MyClass是部分的我能够自己覆盖ToString吗? 我知道我可以用生成的.cs文件写。 什么是最好的方法,我应该这样做?

如何在.NET远程处理期间使用自定义序列化?

我编写了一个自定义序列化例程,它不使用ISerializable或SerialzableAttribute将我的对象保存到文件中。 我也远程调用这些相同的对象,并希望使用相同的序列化技术。 但是,我不想实现ISerializable,因为我的序列化方法与我的对象完全分离(我希望它保持这种方式)。 有没有一种简单的方法(可能有远程接收器),我可以在其中获取流并向其写入字节,另一方面从中读取字节,跳过.NET中的序列化框架?

反序列化jQuery序列化表单

我正在尝试将表单输入传递给WebMethod并执行某些操作。 我使用了jQuery Serilize 。 $.fn.serializeNoViewState = function () { return this.find(“input,textarea,select,hidden”) .not(“[type=hidden][name^=__]”) .serialize(); } $(function () { $(“#Button1”).click(function (e) { var res = $(“#myform”).serializeNoViewState(); var jsonText = JSON.stringify({ bject: res }); $.ajax({ type: “POST”, url: “Default.aspx/Test”, data: jsonText, contentType: “application/json; charset=utf-8”, dataType: “json”, success: function (msg) { // alert(“asd”); }, error: AjaxFailed }); }); }); […]

快速简单的对象序列化

我正在寻找2D世界中最快的序列化方法拼贴。 让我们说世界很大,因为计算机不能同时处理那么多块,所以我把世界分成了块。 BinaryFormatter似乎很慢。 有没有更快的方法,如何序列化块对象? WChunk对象结构 public class WChunk { public int ChunkX; public int ChunkY; public SortedDictionary Tiles; } WTile对象结构 public class WTile { WPoint Location; int Data; }

强制protobuf-net忽略IEnumerable / ICollection接口

我怎么能得到protobuf-net的v2来忽略我的类实现ICollection,IEnumerable等的事实? 对于这种特殊情况,我只希望标记为[ProtoMember]的字段被序列化。 我目前正在使用protobuf-net v1转换为使用v2。 我有一个特殊的结构,由于更改,现在正在序列化错误。 它看起来像下面这样: [ProtoContract] public class FileTree : ICollection, IEnumerable, IEnumerable, INotifyCollectionChanged, INotifyPropertyChanged { private FileTreeNode _Root; [ProtoMember (1)] public FileTreeNode Root { get { return _Root; } set { _Root = value; } } } 编写FileTree类是为了将像“C:\ happy.txt”“C:\ history.txt”这样的文件路径折叠成更像 “C:\h” └─── “appy.txt” └─── “istory.txt” 该结构消除了路径串中的冗余。 所以,我真的不希望通过IEnumerable函数序列化FileTree类,因为它只是存储为“C:\ happy.txt”,“C:\ history.txt”等。现在,在序列化中对于FileTree对象,每个路径都将完全打印出来。 编辑:我要提到的最后一件事 – 我在FileTree中有一个On_Deserialization函数,它用[ProtoAfterDeserialization]标记。 我在函数中放了一个断点,但它没有被击中。 […]

如何使用json动态成员获得WCF DataContract

在我正在开发的项目中,我们需要一个可以包含一些未定义的JSON的DataContract。 DataMember是一些仅对客户端有意义的JSON。 我们希望允许客户向我们发送我们不知道的json。 例: public class Contract { [DataMember] public int clientId; [DataMember] public string json; } 显然,有一个像这样定义的契约需要客户端像这样转义json: { “clientId”:1, “json”: “{\”test\”:\”json\”}” } 显然,这不是我们所需要的。 客户端应该发送给我们的json应该如下所示: { “clientId”:1, “json”: {“test”:”json”} } 可能的解决方案: 使用Stream作为请求正文的合约参数。 工作,但将工作放在我们这边,而不是使用框架。 将“json”定义为DynamicObject。 不起作用。 无法正确写入财产。 使用Newtonsoft库,更改WCF端点中的默认协定序列化程序,以序列化JObject的所有输入。 我们还处理请求的序列化,它会导致我们的应用程序出现问题。 我们宁愿避免这种方式。 有没有人可以解决这个问题? 编辑 该服务提供restjson资源。 它使用webHttpBinding定义单个端点。 操作定义如下(为简单起见,将其拆除): [WebInvoke(Method = “POST”, UriTemplate = “…”, ResponseFormat = WebMessageFormat.Json, RequestFormat = […]

如何使用XmlElementAttribute for List ?

我有一个这样的课: public class Level { [XmlAttribute] public string Guid { get; set; } } public class LevelList : List { } public class Test { public LevelList CalLevelList { get; set; } } 使用XmlSerializer,我得到这样的输出: 这在技术上是正确的。 但是,在不更改类名的情况下,我想使输出看起来像这样: 我知道这可以通过属性完成,但无法弄清楚如何。 当我向Test类添加一个属性时,如下所示: public class Test { [XmlElement(“Levels”)] public LevelList CalLevelList { get; set; } } 输出非常令人惊讶: 这意味着,我丢失了父节点。 我指定的元素名称成为节点名称。 为什么这个? […]