Tag: C#的

正确实施IDisposable

在我的课程中,我实现了IDisposable,如下所示: public class User : IDisposable { public int id { get; protected set; } public string name { get; protected set; } public string pass { get; protected set; } public User(int UserID) { id = UserID; } public User(string Username, string Password) { name = Username; pass = Password; } // Other functions […]

将Json反序列化为Asp.Net Web API中的派生types

我打电话给我的WebAPI发送一个我想匹配(或绑定)模型的JSON的方法。 在控制器中我有一个方法,如: public Result Post([ModelBinder(typeof(CustomModelBinder))]MyClass model); 'MyClass',作为参数给出的是一个抽象类。 我希望在,根据传递的JSON的types,正确的inheritance类被实例化。 为了实现它,我试图实现一个自定义绑定。 问题是(我不知道这是非常基本的,但我找不到任何东西)我不知道如何检索请求中的原始Json(或更好,某种序列化)。 我懂了: actionContext.Request.Content 但是所有的方法都是以asynchronous方式公开的。 我不知道这是否适合将生成模型传递给控制器​​方法。 非常感谢!

实施

在C / C ++中有没有速度和高速caching效率的trie的实现? 我知道什么是特里,但我不想重新发明,自己实施。

将任何对象转换为byte

我正在写一个原型的TCP连接,我有一些麻烦均匀化数据发送。 目前,我只发送string,但将来我们希望能够发送任何对象。 这个代码目前非常简单,因为我认为所有东西都可以被转换成一个字节数组: void SendData(object headerObject, object bodyObject) { byte[] header = (byte[])headerObject; //strings at runtime, byte[] body = (byte[])bodyObject; //invalid cast exception // Unable to cast object of type 'System.String' to type 'System.Byte[]'. … } 这当然很容易解决了 if( state.headerObject is System.String ){…} 问题是,如果我这样做,我需要检查在运行时无法转换为字节[]的每种types的对象。 由于我不知道在运行时无法将每个对象都转换为byte [],所以这不是一个选项。 如何将任何对象转换为C#.NET 4.0中的字节数组?

包含其他对象的类的C ++隐式拷贝构造函数

我知道如果你没有实现自己,编译器有时会提供一个默认的拷贝构造函数。 我很困惑这个构造函数是做什么的。 如果我有一个包含其他对象的类,其中没有一个具有声明的拷贝构造函数,那么行为是什么? 例如,像这样的一个类: class Foo { Bar bar; }; class Bar { int i; Baz baz; }; class Baz { int j; }; 现在,如果我这样做: Foo f1; Foo f2(f1); 默认的拷贝构造函数会做什么? Foo的编译器生成的拷贝构造函数是否会调用Bar的编译器生成的构造函数来复制一个bar ,然后调用Baz编译器生成的拷贝构造函数?

ITextSharp插入文本到现有的PDF

标题总结了这一切。 我想使用iTextSharp将文本添加到现有的PDF文件,但是我找不到如何在networking中的任何位置执行此操作。 PS:我不能使用PDF表单。 提前致谢

使用System.IO.Compression在内存中创build一个ZIP存档

我试图创build一个ZIP存档与一个简单的演示文本文件使用MemoryStream如下: using (var memoryStream = new MemoryStream()) using (var archive = new ZipArchive(memoryStream , ZipArchiveMode.Create)) { var demoFile = archive.CreateEntry("foo.txt"); using (var entryStream = demoFile.Open()) using (var streamWriter = new StreamWriter(entryStream)) { streamWriter.Write("Bar!"); } using (var fileStream = new FileStream(@"C:\Temp\test.zip", FileMode.Create)) { stream.CopyTo(fileStream); } } 如果我运行这个代码,档案文件本身被创build,但foo.txt不是。 但是,如果我直接用文件streamreplaceMemoryStream ,则会正确创build存档: using (var fileStream = new FileStream(@"C:\Temp\test.zip", FileMode.Create)) […]

如何使用C#stream式传输摄像头video?

我想制作一个简单的服务器应用程序,用户可以使用基于浏览器的客户端(稍后我将介绍)观看stream式video。 我想用C#。 我需要通过networking摄像头捕获video或快速图像并通过networking发送?

try / catch / throw和try / catch(e)/ throw e的区别

有什么区别 try { } catch { throw; } 和 try { } catch(Exception e) { throw e;} ? 而我应该什么时候使用一个或另一个?

我怎样才能把时间整理到最近的X分钟?

是否有一个简单的函数来将DateTime时间舍入到最近的15分钟? 例如 2011-08-11 16:59变成2011-08-11 17:00 2011-08-11 17:00保持2011-08-11 17:00 2011-08-11 17:01变成2011-08-11 17:15