• 山塞一个PetShop ——源代码下载、安装、配置及体验


    源代码:13033480群共享

    PetShop是一个范例,微软用它来展示.Net企业系统开发的能力。业界有许多.Net与J2EE之争,许多数据是从微软的PetShop和Sun的PetStore而来。这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注。然而PetShop随着版本的不断更新,至现在基于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,而且有很多可以借鉴之处。PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸现了许多颇有价值的设计与开发理念。

    一、源代码下载

    高速下载地址:http://download.csdn.net/detail/yousuosi/3732384

    原始地址:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/bdasamppet4.asp

     二、源代码安装

    傻瓜式安装,安装时注意这么两点就行了:

    1、选择完全安装,这样,安装时会把数据库直接安装上。

    2、运行前,要“重新生成解决方案”。

    三、配置及体验

    1、注册与登录

    数据库里已经有12个注册用户,分别是:

    demo, AdamBarr, KimAbercrombie, RobYoung, TomYoutsey, GaryWYukish, RobCaron, KarinZimprich, RandallBoseman, KevinKennedy, DianeTibbott, or GarrettYoung. 密码都是:pass@word1.

    结帐离开时(Check Out),会要求登录,你也可以自己注册一个用户名,注册时注意密码要足够复杂,类似pass@word1,或者干脆就用个邮箱当密码吧。

    使用自己注册的用户名结帐时,输入信息比较烦,格式有要求,不如直接使用系统提供的12个用户名,结帐信息就可以不用再输入了。

    2、启动MSDTC服务

    提交定单时(Submit Order),服务器 'J7-T2\SQLEXPRESS' 上的 MSDTC 不可用。

    只要在windows控制面版-->管理工具-->服务-->Distributed   Transaction   Coordinator-->属性-->启动即可。

    这时,查看数据库MSPetShop4Orders中的表Orders,可看到,有一条定单(Order)记录。

    3、异步定单模式

    以上是PetShop4.0默认的同步定单模式(OrderSynchronous),如果要工作在异步定单模式(OrderAsynchronous),还需进行如下设置:

    (1)、添加一人私有队列“PSOrders”,这个私有队伍是“事务性”的。

    (2)、修改web.config中的"OrderStrategyClass"字段为异步模式OrderAsynchronous
    <add key="OrderStrategyClass" value="PetShop.BLL.OrderAsynchronous"/>

    (3)、把Web.config文件中"OrderQueuePath"的值中,MachineName换成你的机器名:

    <add key="OrderQueuePath" value="FormatName:DIRECT=OS:MachineName\Private$\PSOrders"/>

    (4)、把OrderProcessor 项目app.config中的"OrderQueuePath"值中,MachineName换成你的机器名:

    <add key="OrderQueuePath" value="FormatName:DIRECT=OS:MachineName\Private$\PSOrders"/>

    异步模式,定单没写入消息队列,没有出错提示,这一点有点讨厌…

    貌似PetShop要重新启动…,

     (5)、使用SQLEXPRESS的,需要修改app.config中的连接字符串:

    server=(local)\SQLEXPRESS

    (6)为数据库添加登录名mspetshop,密码为pass@word1,并设置服务器角色为sysadmin。当然你也可以修改app.config中的连接字符串中的用户名和密码。

    运行调试异步消息处理功能时,提交定单后,定单信息在消息队列里,运行OrderProcessor(也可以先运行),会定时查看这个消息队列,

    一旦有定单,马上取出,并把定单写到Orders表中。

  • 相关阅读:
    Oracle 19.3 RAC on Redhat 7.6 安装最佳实践
    宝宝换牙期 需要注意这几点
    人生与机会
    历届「Jolt Awards」获奖书籍
    语言包缩写
    用XMLTask操作XML
    clearcase命令(转)
    【ZT】我家宝宝不会哭分享在美国养孩子的妈妈经(必看)
    Ubuntu启动问题以及Grub Rescue修复方法
    几个远程桌面客户端
  • 原文地址:https://www.cnblogs.com/java20130723/p/3211679.html
Copyright © 2020-2023  润新知