2008年3月小记(设置Windows服务的依赖关系,配置MSMQ的访问权限,WCF的安全配置,删除重建网站,HttpWebRequest,一年中的周,在WCF中使用HttpContext,String.Join)
2008-03-07 10:16
1381 查看
1、如何设置Windows服务的依赖关系?
因为新开发的内容服务的WCF通信使用的是MSMQ接收用户内容的异步可离线信息,内容服务本身是一个windows服务,而这个服务必须使用MSMQ,所以就要求在机器启动时必须先启动MSMQ服务,然后才可以再启动内容服务,这就需要在内容服务中设定服务的依赖关系,此服务必须要在MSMQ服务启动后再启动。
修改ProjectInstaller.cs中的serviceInstaller1的属性ServicesDependedOn,此属性接收一个数组设置,一行代表一个依赖的服务,因为这里只依赖于MSMQ,所以填写MSMQ的服务名"MSMQ"就行了,重新编译安装内容服务后就可以了,此服务启动时,如果MSMQ没有启动,则会自动先启动MSMQ服务。
2、配置MSMQ的访问权限。
通过MessageQueue.Create创建的队列默认情况下不可以在控制台被Administrator控制或查看,这是因为没有配置权限的原因。可以在Create之后配置权限。
4、解决问题的一个可能方法:删除重建网站
网站中有一个虚拟目录service,其中提供了一个wcf服务*.svc 本地一切正常,当布署到测试服务器总是报"重新添加url地址"的错误,但是其它也是放在虚拟目录中的wcf并没有这样的错误,测了老半天发现还是网站本身的个案,所以重建了网站和虚拟目录,结果就好了。有时候这是一种最为便捷的排除方法。
5、HttpWebRequest请求一个页面的内容。
B、必须将应用程序配置为使用 ASP.NET 兼容模式。
注意为了使WCF保持一致风格,可以使用InstanceContext对像。
另外,WCF 应用程序也可以配置为使用 .asmx(而非 .svc)作为服务文件的扩展名。
此选项可以使您在将服务修改为使用 WCF 时,免于修改配置为使用 .asmx 服务文件 URL 的客户端。
Providing custom context to your WCF service instance
从开发的角度比较 ASP.NET Web 服务与 WCF
AspNetCompatibilityRequirementsAttribute
8、如何编写并发测试代码?
9、串联字符串
String.Join(",", new string[]{"a","b","c"})
因为新开发的内容服务的WCF通信使用的是MSMQ接收用户内容的异步可离线信息,内容服务本身是一个windows服务,而这个服务必须使用MSMQ,所以就要求在机器启动时必须先启动MSMQ服务,然后才可以再启动内容服务,这就需要在内容服务中设定服务的依赖关系,此服务必须要在MSMQ服务启动后再启动。
修改ProjectInstaller.cs中的serviceInstaller1的属性ServicesDependedOn,此属性接收一个数组设置,一行代表一个依赖的服务,因为这里只依赖于MSMQ,所以填写MSMQ的服务名"MSMQ"就行了,重新编译安装内容服务后就可以了,此服务启动时,如果MSMQ没有启动,则会自动先启动MSMQ服务。
2、配置MSMQ的访问权限。
通过MessageQueue.Create创建的队列默认情况下不可以在控制台被Administrator控制或查看,这是因为没有配置权限的原因。可以在Create之后配置权限。
if (!MessageQueue.Exists(@".\private$\ContentReceiverQueue")) <binding name="SampleContentBinding"> <security mode="None" /> </binding>
4、解决问题的一个可能方法:删除重建网站
网站中有一个虚拟目录service,其中提供了一个wcf服务*.svc 本地一切正常,当布署到测试服务器总是报"重新添加url地址"的错误,但是其它也是放在虚拟目录中的wcf并没有这样的错误,测了老半天发现还是网站本身的个案,所以重建了网站和虚拟目录,结果就好了。有时候这是一种最为便捷的排除方法。
5、HttpWebRequest请求一个页面的内容。
string url = "xxxxxxxxxxxxx"; HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Timeout = 5000; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) // 求某年有多少周 public static int GetYearWeekCount(int year) // 求当前日期是一年的中第几周 public static int WeekOfYear(DateTime day) [ServiceBehavior] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] public class SampleContent : ISampleContent
B、必须将应用程序配置为使用 ASP.NET 兼容模式。
<system.serviceModel> <serviceHostingEnvironment aspNetCompatibilityEnabled="true"></serviceHostingEnvironment> </system.serviceModel>
注意为了使WCF保持一致风格,可以使用InstanceContext对像。
OperationContext operationContext = OperationContext.Current; InstanceContext instanceContext = operationContext.InstanceContext;
另外,WCF 应用程序也可以配置为使用 .asmx(而非 .svc)作为服务文件的扩展名。
<system.web> <compilation> <compilation debug="true"> <buildProviders> <remove extension=".asmx"/> <add extension=".asmx" type="System.ServiceModel.ServiceBuildProvider, Systemm.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </buildProviders> </compilation> </compilation> </system.web>
此选项可以使您在将服务修改为使用 WCF 时,免于修改配置为使用 .asmx 服务文件 URL 的客户端。
Providing custom context to your WCF service instance
从开发的角度比较 ASP.NET Web 服务与 WCF
AspNetCompatibilityRequirementsAttribute
8、如何编写并发测试代码?
9、串联字符串
String.Join(",", new string[]{"a","b","c"})
相关文章推荐
- 2008年3月小记(设置Windows服务的依赖关系,配置MSMQ的访问权限,WCF的安全配置,删除重建网站,HttpWebRequest,一年中的周,在WCF中使用HttpContext,String.Join)
- 在 IIS 6 和 IIS 7中配置Https,设置WCF同时支持HTTP和HTPPS,以及使用HttpWebRequest和HttpClient调用HttpS
- 使用HttpWebRequest访问Web服务,并传递Cookie数据
- 使用HttpWebRequest访问需要登录的网站-另一种途径
- WINDOWS 2003 IIS网站防木马权限设置安全配置整理
- HTTP服务基础 、 网页内容访问 、 安全Web服务 、 部署动态网站
- 运维之红帽工程师篇-----3. HTTP服务基础 、 网页内容访问 、 安全Web服务 、 部署动态网站
- 使用C#的HttpWebRequest访问网站
- SVN-1.5.3+Apache-2.0.59在windows下的配置与权限设置,以及配置HTTP方式访问SVN服务器
- VB.net使用httpWebRequest访问带cookie的网站时如何传递cookie值
- Android 程序访问WEB服务 HTTP 接口使用
- 使用C#的HttpWebRequest模拟登陆网站
- 配置Tomcat下的web应用服务的安全权限
- Windows8[Web应用程序项目***已配置为使用IIS。无法访问IIS元数据库,您没有足够的特权访问计算机上的IIS网站]
- webapi使用System.Web.Http.Cors配置跨域访问的几点注意事项
- 使用C#的HttpWebRequest模拟登陆网站
- 使用C# + httpWebRequest 解析WMTS服务元数据
- ASP.NET中使用HttpWebRequest调用WCF
- 蛙蛙推荐:用TLS实现安全TCP传输及配置和访问https的web服务
- 使用 HttpWebRequest 类调用 WEB 服务的示例(C#) 转