自从开始使用 IIS 7 后感觉又变成了新手,虽然用 Windows 7 已经快 1 年了,可是 IIS 配置方面研究很少,WCF 也是近期才接触,导致配置上犯了几个低级错误,记录一下,以免再犯。(其实是自己记忆力很糟@_@)
1、在应用程序开发里选上 ASP.Net ,否则会报错 500.19(好初级的问题…)
2、在 Microsoft .NetFramework 3.5.1 中将 WCF 授权相关的两项全部勾上,否则会报错 404
3、修改 .svc 文件的命名空间时 vs 总是自动打开 .svc.cs 文件,要用文本编辑器打开 .svc 文件,其中的 Service 属性也要修改为一致
4、4.0 的工程切换到 3.5 需要手动增加 web.config 的 <serviceBehaviors> 节,如果不知道怎么写,新增个 WCF 服务就会自动加配置节,然后手动复制修改即可(很不人性化啊,还是 4.0 简单很多)
5、一个 .svc 文件仅能对应一个服务,网络上有些绕过 .svc 文件的方法,等有空可以试试
6、公布服务方法都需要加上属性 DataMember ,而枚举使用的是 EnumMember 属性,并且枚举可以忽略 DataContract 和 EnumMember
7、尽量不要使用 Guid、Point 等系统特有类型,引用时 Guid 将转化为 string,Point 将自动生成同名的类,并且自动生成的类很不好用,还会将大小写规则改变掉
8、类的属性也是无法引用过来的,比如 DisplayName 属性