NopCommerce MVC 插件机制分析
摘要:基本原理插件话的应用程序一般都是先定义插件接口,然后把插件编译的dll放到固定的目录中,应用程序主程序通过加载那些实现了插件接口的dll来实现插件的使用。NopCommerce也是这样,但作为MVC Web应用程序会有一些不一样,首先是不同信任级别(Full Trust,Medium Trust)的时候加载dll的策略会有不一样,另外就是怎样显示插件中的View的问题。放插件的文件夹NopCommerce的插件放在网站主目录的Plugins目录下,Plugins下面有很多文件夹,一个插件类库就是一个文件夹。在插件类库中修改编译输出的地址为网站主目录的Plugins文件夹,这样插件生成的dll就
阅读全文
posted @
2013-06-06 08:47
nick hao
阅读(11693)
推荐(11) 编辑
DebuggerDisplay和DebuggerTypeProxy
摘要:DebuggerDisplay和DebuggerTypeProxy是两个属性,用来在VS调试的状态下,显示一些额外的信息,方便用户进行调试。DebuggerDisplay 不单能够显示变量的值,还能调用变量的方法来计算结果显示:class Program { static void Main(string[] args) { Company c = new Company(); Console.ReadLine(); } } [DebuggerDisplay("company name:{n...
阅读全文
posted @
2013-03-04 20:08
nick hao
阅读(2032)
推荐(2) 编辑
.Net CLR 中的同步机制(三): AutoResetEvent和ManualResetEvent
摘要:AutoResetEvent ManualResetEvent 同步
阅读全文
posted @
2013-02-20 16:01
nick hao
阅读(2476)
推荐(3) 编辑
.Net CLR 中的同步机制(一): 互斥体
摘要:随着软硬件技术的发展,无论是在Web服务或者云计算,还是单一的应用程序,串行方式编写的软件越来越少,我们总是可以看见并行的存在。但是并行并不是适合于每一种场景,也完全不是将工作扔到线程池中排队运行那么简单。由于在进程中,多个线程可能需要访问相同的虚拟内存地址空间,如果不进行控制就很容易出现数据竞争的并发问题,大多是因为操作非原子性和线程时间片的原因引起的,导致的现象会是抛出异常,程序崩溃,数据的值和期望不一致,数据破坏等等,关键有的时候还会随机出现一些问题,这次运行正确,下一次就不正确了,这些问题都不是简单的单元测试就可以测试出来的。为了解决这些问题,windows就提供了同步机制,同步就是唯
阅读全文
posted @
2013-01-29 22:42
nick hao
阅读(2024)
推荐(1) 编辑
.Net下RabbitMQ的使用(2) -- 发送接收消息
摘要:在安装和配置完成RabbitMQ之后,我们就可以尝试做一个最简单的例子:发送和接收消息。我们先来看客户端也就是发送者的代码:public class RabbitClient{ //定义连接工厂 ConnectionFactory factory = new ConnectionFactory(); public RabbitClient() { //指定要连接的RabbitMQ服务地址 factory.HostName = "localhost"; } public void Send() { //定义要发送...
阅读全文
posted @
2012-09-26 13:15
nick hao
阅读(6864)
推荐(0) 编辑
.Net下RabbitMQ的使用(1) -- 初识RabbitMQ
摘要:1. 什么是RabbitMQ MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应...
阅读全文
posted @
2012-09-26 13:15
nick hao
阅读(6585)
推荐(4) 编辑