在目前的项目开发中,分布式开发已经逐渐成为主流.一个项目要是没有采用分布式架构,都不好意思跟别人说这是一个完整的项目.这句话虽然有些过激,但是随着人们对效率的要求在提高,以及产品需要提升用户体验.只有在软件项目的效率和体验做到高质量,才可以赢得用户和市场. 对于.NET项目,我们使用较多的分布式结构有Webservice,.Net remoting,MSMQ,WCF,WebAPI等等,我们在使用这些框架的时候,从这些分布式框架中得到了很好的用户体验.在.NET项目中,分布式架构对项目的开发也有很…
在目前的项目开发中,分布式开发已经逐渐成为主流.一个项目要是没有采用分布式架构,都不好意思跟别人说这是一个完整的项目.这句话虽然有些过激,但是随着人们对效率的要求在提高,以及产品需要提升用户体验.只有在软件项目的效率和体验做到高质量,才可以赢得用户和市场. 对于.NET项目,我们使用较多的分布式结构有Webservice,.Net remoting,MSMQ,WCF,WebAPI等等,我们在使用这些框架的时候,从这些分布式框架中得到了很好的用户体验.在.NET项目中,分布式架构对项目的开发也有很…
转眼就到了元宵节,匆匆忙忙的脚步是我们在为生活奋斗的写照,新的一年,我们应该努力让自己有不一样的生活和追求.生命不息,奋斗不止.在上篇博文中主要介绍了.NET的AppDomain的相关信息,在本篇博文中将会主要说明.NET程序集.对象代理,以及对象的封送原理. 一.程序集解析: 谈到程序集,就要知道什么叫做程序集,我们看看程序集的定义是什么.程序集大致分为两种:一种是类库(就是我们看到的.DLL文件):一种是可执行程序(就是我们看到的.EXE文件).程序集是一个或多个模块/资源文件的逻辑分组(一…
NET对象的跨应用程序域 转眼就到了元宵节,匆匆忙忙的脚步是我们在为生活奋斗的写照,新的一年,我们应该努力让自己有不一样的生活和追求.生命不息,奋斗不止.在上篇博文中主要介绍了.NET的AppDomain的相关信息,在本篇博文中将会主要说明.NET程序集.对象代理,以及对象的封送原理. 一.程序集解析: 谈到程序集,就要知道什么叫做程序集,我们看看程序集的定义是什么.程序集大致分为两种:一种是类库(就是我们看到的.DLL文件):一种是可执行程序(就是我们看到的.EXE文件).程序集是一个或多个模…
原文 WPF 中那些可跨线程访问的 DispatcherObject(WPF Free Threaded Dispatcher Object) 众所周知的,WPF 中多数对象都继承自 DispatcherObject,而 DispatcherObject 带给这些对象一个特点:不能跨线程访问. 不过,WPF 中依然存在一些例外.本文将介绍 WPF 那些可跨线程访问的 DispatcherObject,如何充分利用这个特点提高应用程序的性能,以及如何自己编写这样的 DispatcherObject…
转载自: 跨应用程序域(AppDomain)的单例(Singleton)实现 - CorePlex代码库 - CorePlex官方网站,Visual Studio插件,代码大全,代码仓库,代码整理,分享,为打造最有价值的在线代码库而不懈努力http://www.udnz.com/code-2882.htm 工作中基于插件模式,特别是插件可能不稳定,导致主程序进程终止时,我们往往使用应用程序域来隔离插件和主程序,但此时如果主程序中有单例(Singleton)实现,那在不同的AppDomain里访问…
为自己写的程序添加插件真的是一个相当常见的功能,然而如果只是简单加载程序集然后去执行程序集中的代码,会让宿主应用程序暴露在非常危险的境地!因为只要插件能够运行任何一行代码,就能将宿主应用程序修改得天翻地覆哭爹喊娘:而根本原因,就在于暴露了整个托管堆和整个 UI 树. 如果将宿主和插件放到不同的应用程序域中,则可以解决此问题.本文将介绍跨应用程序域承载 UI 的方法,其中也包含跨域(Cross-Domain)调用方法.   来自于托管插件框架的辅助类 .NET Framework 自 3.5 以来…
背景 早期为了避免 CSRF(跨站请求伪造) 攻击,浏览器引入了 "同源策略" 机制.如果两个 URL 的协议,主机名(域名/IP),端口号一致,则视为这两个 URL "同源",属于同一个 "域",否则视为 "非同源",即 "跨域".浏览器会主动拦截跨域的 AJAX 请求,以规避安全风险. "同源策略" 固然提升了请求的安全性,但有时我们需要跨域请求其他域名下的资源,例如在业务域名下请求…
XMLHttpRequest对象是W3C的标准API,用于访问服务器资源.XMLHttpRequest对象支持多种文本格式,如XML和JSON等.XMLHttpRequest对象可以通过HTTP和HTTPS发送请求. 通常出于安全的考虑,Web页面的XMLHttpRequest对象不能访问其他域的服务器.但是Chrome浏览器扩展没有这个限制,只要设置了跨域访问的权限,Chrome浏览器扩展的XMLHttpRequest对象可以访问声明的任何域的服务器. 每个Chrome浏览器扩展都运行于自己的…
在Entity Framework中,可以使用lambda表达式进行对数据的查询,而且可以将查询结果直接映射为对象或者对象列表,这极大的提高的开发速度,并且使数据层的数据更加方便处理和传递.但是很多时候,我们不需要把整个表的字段都查出来,如果我们直接把整个数据实体查询出来,就极大的影响了性能,所以我们需要通过查询匿名对象或者已经定义的方式,对数据库进行查询: 1.实例使用的数据实体类: public class Category { public int Id { get; set; } pub…