Convert String to GUID
Sometime , we need store GUID as string.
But how to convert string to GUID.
Just do like below:
var guid = new GUID(yourStringGUID).
the wrong way is : var guid = (GUID)yourStringGuid.
The Future of SaaS in China
SaaS is popular from Saleforces and start form CRM. Because it’s successful in the business, SaaS module is abstract lot of companys to imitate.For china, it’s good with bad.The good is the give us a target and a imitator object, like 800APP,xTools,cnSaaS . The bad is which limites our thinking.Besides CRM, seem like we have no idea about SaaS. Many imitator try to convert its all own product to SaaS module, like OA,ERP,HR,CRM.They are hot concept followers. All software company believe no SaaS ,no future. I also agreed it . but How can we start with SaaS ?
SaaS PaaS IaaS
SaaS(Software-as-a-service:软件在线服务) SaaS是Software-as-a-service(软件在线服务)的简称,是随着互联网技术的发展和应用软件的成熟,而在21世纪开始兴起的一种完全创新的软件应用模式。它与“on-demand software”(按需软件),the application service provider(ASP,应用服务提供商),hosted software(托管软件)所具有相似的含义。它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其定购的软件和服务。对于许多小型企业来说,SaaS是采用先进技术的最好途径,它消除了企业购买、构建和维护基础设施和应用程序的需要。
PaaS(Platform-as-a-Service:平台即服务) 全称:(Platform as a service)中文: 平台作为服务,把服务器平台作为一种服务提供的商业模式。通过网络进行程序提供的服务称之为SaaS(Software as a Service),而云计算时代相应的服务器平台或者开发环境作为服务进行提供就成为了 PaaS(Platform as a Service)。所谓PaaS实际上是指将软件研发的平台(计世资讯定义为业务基础平台)作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。
IaaS(Infrastructure as a Service:基础设施即服务) 消费者通过 Internet 可以从完善的计算机基础设施获得服务。这类服务称为基础设施即服务(Infrastructure as a Service,IaaS)。基于 Internet 的服务(如存储和数据库)是 IaaS的一部分。Internet上其他类型的服务包括平台即服务(Platform as a Service,PaaS)和软件即服务(Software as a Service,SaaS)。
PaaS提供了用户可以访问的完整或部分的应用程序开发,SaaS则提供了完整的可直接使用的应用程序,比如通过 Internet管理企业资源。 作为 Infrastructure as a Service (IaaS) 在实际应用中的一个例子,The NewYorkTimes 使用成百上千台 Amazon EC2 实例在 36 小时内处理 TB 级的文档数据。如果没有 EC2,TheNewYork Times 处理这些数据将要花费数天或者数月的时间。 IaaS 分为两种用法:公共的和私有的。AmazonEC2在基础设施云中使用公共服务器池。更加私有化的服务会使用企业内部数据中心的一组公用或私有服务器池。
云计算(Cloud Computing) 是个2007年第3季度才兴起的新名词,是一种新兴的商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务。 云计算的定义有着狭义和广义之分。狭义的云计算,指的是厂商通过分布式计算和虚拟化技术搭建数据中心或超级计算机,以免费或按需租用方式向技术开发者或者企业客户提供数据存储等。广义的云计算,则指厂商通过建立网络服务器集群,向各种不同类型客户提供在线软件服务、硬件租借、数据存储、计算分析等不同类型的服务。显然,广义的云计算包括了更多的厂商和服务类型,例如以八百客、沃利森为主开发的在线CRM软件,国内用友、金蝶等老牌管理软件厂商也推出的在线财务软件,谷歌发布的 Google应用程序套装等,都可纳入这一范畴。
云(Cloud) 是一些可以自我维护和管理的虚拟计算资源,通常为一些大型服务器集群,包括计算服务器、存储服务器、宽带资源等等。云计算将所有的计算资源集中起来,并由软件实现自动管理,无需人为参与。这使得应用提供者无需为繁琐的细节而烦恼,能够更加专注于自己的业务,有利于创新和降低成本。 有人打了个比方:这就好比是从古老的单台发电机模式转向了电厂集中供电的模式。它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。最大的不同在于,它是通过互联网进行传输的。 云计算是并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的发展,或者说是这些计算机科学概念的商业实现。云计算是虚拟化(Virtualization)、效用计算(Utility Computing)、IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)等概念混合演进并跃升的结果。
复杂url在 app seting 中的配置
如果在 App Setting 中配置如下的节点:
<add key=”ECUserRegisterLoginUrl” value=”http://www.songkai.net/unifiedentry.aspx?token=449572D06AFC416FAA54AD296E4B0079&url=http://www.songkai.net/Portal/User/ECUserRegister.aspx”/>
程序将抛出错误。
需要将 &url 换成 &url;
App_Code 中类不可见问题
有时候在App_Code中添加类,在别处却无法引用。
解决方法:
选中该类 –>右键–>属性–>生产操作 选择 “编译”
即可解决该问题。
VS2008 IDE主题更换
VS2008 默认的主题是白底的,时间长了,难免审美疲劳,而且对眼睛不好。下面介绍一下如何对其进行换肤。
首先 要找到自己喜欢的主题。studiostyles 提供了一些可供选择的主题。
不过经过比较,我还是喜欢 这个网站上的 OrenEllenbogen 主题。
可以在在这儿下载 OrenEllenbogen 主题。
然后,通过VS2008菜单–>工具–>导入导出设置,即可将主题导入。
Google Map API:Error 500 地图显示问题
最近一个项目要通过ASP.net 显示Google 地图,采用网上开源的框架,Google Map User Control for ASP.NET . 由于在Google API key 的申请 要和与域名绑定,但是域名在上线之前一直没有注册下来。导致该功能一直没有好好测试。之前,出现弹出对话框的干扰,以为是 域名问题导致。因此,后来就先上了生产环境。考虑等域名注册好之后,申请 Google API key,修改配置文件即可。但是,后来域名注册好之后,重新申请了Google API key. 发觉了一个显现: 只有在IIS 重启之后的,来自客户端的第一次请求,Google map 才可以正常显示。 如果来自另一个客户端,或者将第一访问的客户端的Cookie清空。 这时候,再次发送请求是,在不同浏览器中出现下面错误:
IE 中:Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; BaiduGame)
Timestamp: Wed, 21 Apr 2010 05:06:33 UTC
Message: Sys.Net.WebServiceFailedException: 服务器方法“GetGoogleObject”失败,
并发生以下错误: — 处理请求时出错。
Firefox 中:
POST http://songkai.net/GServcie/GService.asmx/GetGoogleObject 500 Internal error
{“Message”:”处理请求时出错。”,”StackTrace”:”",”ExceptionType”:”"
开始分析这种现象一直以为 是 Web Service 和 ASPX 页面对Session的处理机制不同,
导致。并怀疑 是生产环境的服务器配置有问题。并搭建了3台虚拟机,进行测试。
发觉在虚机环境下,是没有这个错误的。 进一步论证了可能是 生产环境的的问题。但是在重装了
服务器操作系统,IIS 等一系列操作之后,该问题仍然存在。一度陷入迷茫。 及至后来,
想到测试服务器和生产环境 唯一不同的是配置文件,因为,我们去升级的时候,
通常不会改变配置文件。因此,就把测试环境下的 配置文件,放到生产环境,
只是更改了数据库联接字符串,发觉错误没了。然后 ,对该两个文件比较 ,
发觉了 一个 可疑的配置项 ,就是网页的过期时间,要在测试环境 是 1;
在 生产环境是 999999. 才恍然大悟。原来 ,在客户端 第一次访问 Google Map 页面的时候,
页面缓存第一次构建没有问题。 当第二个客户端来访问的时候,在缓存的页面去调用Web Service,
Web Service在对该session处理的时候发觉不匹配,导致在获取 GetGoogleObject的时候有异常抛出。
问题 1:
为什么在测试环境的配置文件和生产文件的配置节点有出入?
-> 发布到测试环境的是 直接从 TFS 中获取的代码重新发布而成,
在TFS中的配置文件,是针对开发用的,所以 , 页面缓存设置为 1。
这样 发布到测试环境,保留了该配置值。也许,如果执行非常严格的测试环境发布流程
这个问题也许就发现不到。
问题2 :
为什么将页面缓存设置为 这么长时间?
-> 本项目有20% 的功能是CMS 功能,为了提供访问速度, 将CMS相关的页面做页面级缓存,
只有在后台更新 文章的时候,采取清除缓存,并重新构建缓存。应此,默认的页面缓存时间很长。
Google map api 弹出认证框问题
今天把注册的域名指向了生产环境,发现调用了Google map API 展示地图,但是总是弹出 认证框,要求输入用户名和密码。 之前,这个弹出框也有,但是官方的解释是 调用Google map api 一定要用域名申请,否认弹出要求认证的框出现。现在,重新用域名申请了Google API key ,还是有这个问题。 做了如下排除:
1. 网站所有的 页面都可以打开,唯独 这个带google地图的有安全认证
2. 检查了该 文件的权限,都没有问题,并且尝试放了一个别的文件,也可以访问。
然后,有研究猜测估计是 可能需要 AuthSub 和 OAuth 认证。但是,又不太可能,因为需要API 认证的往往是Google 需要登录的服务,比如Google Calendar等。
然后 有仔细研究了一下 IIS 的安全设置,发觉IIS的 集成 属性->目录安全->身份验证控制 ,集成身份验证 被选中了。
不要选择 集成windows身份验证,运行 iisreset. 弹出框就没有了。


