C# 为开拓者供应十分多便利方法用来访问各种 Web 处事,可是编写异步的访问办法却是有点复杂。Windows 通讯框架是一个客户端/Server通讯非常棒的Tools。我杰出创造我自己必须写十分多代码来应用已有的 API。微软供应的这些 API 对一些基本的应用来说都是过于复杂。而 HttpLib 大大的简化了在 C# 中异步的访问 Web 处事的编程。应用该库仅需1行代码就可以够访问网页和上传文件到 Web Server,假设你是应用 HttpWebRequest 来完成相似功用则需 30 行代码。
HttpLib 可从 http://www.2kb.com/p/httplib 网站上下载。
用户只需求对 GET 和 POST 熟悉就可以够了,其他的扩展知识有则更好,没有也无妨。
GET 网页
该异步的方法异步的央求一个网页,并将结果传递给一个 Lambda 表达式:
Request.Get("http://www.2kb.com/", result=> { Console.Write(result); });
应用相似的办法可以将数据提交给 Web 处事,可传入一个匿名Tools用来表示央求的Tools。
Request.Post("http://testing.local/post.php", new {name="James",username="Redslide"}, result=> { Console.Write(result); });
HttpLib 也支持 Multipart/form-encoded 文件上传方法。FileStreams 可复制到 Web 央求。你可以在 Sliverlight 运用中间接颠末摄像头取得 ImageStream 来上传数据:
Request.Upload("http://testing.local/post.php", new {name = "value"}, new [] {new NamedFileStream("file", "photo.jpg", "image/jpeg", new FileStream(@"C:photo.jpg",FileMode.Open))}, result=> { Console.Write(result); });
匿名Tools序列化
匿名Tools可颠末反射来序列化,Tools一切的属性列表可颠末 GetProperties() 来取得,这个方法使得序列化器迭代一切央求的值:
foreach (var property in Parameters.GetType().GetProperties()) { string name = property.Name string value = property.GetValue(Parameters, null).ToString(); }
2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务