EvreryDay Collect

一、在使用WebService时咱们常常会考虑如下问题:怎么防止别人访问个人WebService?html

  在System.Net中提供了一个NetworkCredential,只有得到该凭证的用户才能访问相应的服务的权限。在NetworkCredential中,咱们经过提供WebService发布所在的服务器名称,以及登陆服务器并调用该WebService的用户名及密码(在IIS中配置)。[2014-06-12]ajax

 

二、VCenter、ESXI关系c#

Vcenter通常指 VMware vCenter™ Serverwindows

VCenter是ESXI的管理端,能够经过VCenter把ESXI进行统一管理跨域

VSphere client 虚拟机主机管理客户端,Vcenter是一个强大的管理端,它能够将多台ESXI主机做为集群,Vmotion等多个功能都必须使用Vcenter才能实现。
链接原理以下
VSphere---->Vcenter------>Esxi Server
上述图的意思就是,VSphere去链接Vcenter,经过Vcenter管理ESXI主机。数组

[2014-06-13]安全

 

 三、SSL 与WCF 访问配置服务器

<bindings>
      <basicHttpBinding>
          <binding name="BasicHttpBinding_IAppService" >
              <security mode="Transport">
                  <transport clientCredentialType="None" />
              </security>
          </binding>

      <binding name="BasicHttpBinding_IEvidenceService">
        <security mode="Transport" />
      </binding>session

       </basicHttpBinding>
  </bindings>

 2014-06-16多线程

 四、windows server 2008r2     HTTP 错误 404.17 - Not Found求的内容彷佛是脚本,于是将没法由静态文件处理程序来处理。

问题是IIS安装有误,以下说明安装不完整

 

步骤:

 

 

五、using == try finally

为了在使用完毕时释放资源,咱们常常要用using,using实质上就是try fiannaly的一个语法糖而已。

 

六、WCF 、Web API 、 WCF REST 和 Web Service 的区别

a、WebService:基于SOAP,仅支持Http协议,只能够在IIS中托管。

                      不是开源

                      支持数据类型: XML

b、WCF:基于SOAP,协议支持:TCP, HTTP, HTTPS, Named Pipes, MSMQ;基于RPC(远程过程调用(Remote Procedure [prə'siːdʒə]n. 程序,手续;步骤  Call) )机制

             能够托管在IIS、window service、applicaion 

             不是开源

             支持数据类型: XML

c、WCF REST:基于SOAP消息格式的WCF

                    支持数据类型: XML, JSON and ATOM 

 

d、Web API:一个基于HTTP的ASP.NET 

      能够托管在IIS、applicaion (应用程序)

      是开源平台

REST:称为具象状态传输 (Representational State Transfer, REST [,reprɪzen'teɪʃ(ə)n(ə)l] adj. 表明的;具象派的) 的体系结构风格。REST 是实现客户端/服务器体系结构风格的一种途径——REST 其实是明确构建在客户端/服务器体系结构风格之上的。

WCF中的REST是一种POX(plain old xml),换句话说就是没有任何规定的xml,没有强行规定消息头,没有消息体。甚至由于没有规定,因此传输的格式用不用xml都不是大问题,Json也能够作为传输数据的封装格式。

[2014-06-23]

 

七、const VS  readonly

  • const只限于数字,字符串和字符,且以常量形式编译,值能够是基本表达式常量值。必须在定义后初始化。
  • readonly常量是字段,只能在定义类的构造函数内修改(或者变量初始化器),派生类的构造函数不能够!

八、readonly和const的区别:(2014-07-14)

    • readonlyconst都是用来标识常量的。
    • const可用于修饰class的field或者一个局部变量(local variable);而readonly仅仅用于修饰class的field。
    • const常量的值一定在编译时就已明确而且恒定的;而readonly常量却有一点不一样,那就是其值能够在运行时编译,固然,它也必须遵照做为常量的约束,那就是值必须恒定不变。
    • const常量必须在声明的同时对其进行赋值,而且确保该值在编译时可肯定并恒定;而readonly常量则能够根据状况选择在声明的同时对其赋予一个编译时肯定并恒定的值,或者将其值的初始化工做交给实例构造函数(instant constructor)完成。如:public readonly string m_Now = DateTime.Now.ToString();,m_Now会随着运行时实际状况变化而变化。
    • const常量属于类级别(class level)而不是实例对象级别(instant object level),而且它不能跟static结合一块儿使用,该常量的值将由整个类的全部实例对象共同分享(详细论述参见后面的Remark区域)。
    • readonly常量既能够是类级别也能够是实例对象级别的,这取决于它的声明以及初始化工做怎么实施。readonly能够与static结合使用,用于指定该常量属于类级别,而且把初始化工做交由静态构造函数(static constructor)完成(有关如何把readonly常量声明为类级别或实例对象级别的论述清参见后面的Remark区域) 。
    • 能被const修饰声明为常量的类型必须是如下的基元类型(primitive type):sbytebyteshortushortintuintlongulongcharfloatdouble,floatbooldecimalstring
    • object, 数组(Array)和结构(struct)不能被声明为const常量。
    • 通常状况下,引用类型是不能被声明为const常量的,不过有一个例外:string。该引用类型const常量的值能够有两种状况,stringnull。其实,string虽然是引用类型,可是.NET却对它特别处理,这种处理叫作字符串恒定性(immutable),使得string的值具备只读特性。有关字符串恒定性的内容,能够参考《Microsoft .NET框架程序设计(修订版)》

 

九、Response.AddHeader “P3P”,”CP=CAO PSA OUR”一段解决IFRAME中SESSION没法保留的代码要理解原理.p3p是微软的隐私策略,一般状况下跨域iframe或者frameset默认采用的隐私策略为“中”,该级别的策略拒绝保留session。CAO PSA OUR则意味着你赞成跨域保留session,可是也意味着你的网站再也不安全。

[2014-09-11]

 

十、#if DEBUG

一、条件编译

MSDN:若是 C# 编译器遇到最后面跟有 #endif 指令的 #if 指令,则仅当指定的符号已定义时,它才会编译这两个指令之间的代码。

eg:#if DEBUG

      Console.WriteLine("初始化" + e.Message) ;
   #endif//DEBUG

它的做用就是当DEBUG时,在控制台输出异常信息,以便你立刻知道出现什么错误,而当不是DEBUG时,那句就不会被编译。

二、断言Assert

做用就是确保你的程序按照预计的目标正常运行,而且可以帮助你迅速定位错误缘由,就象c#里的断言方法System.Diagnostics.Debug.Assert的定义,判断一个条件是否成立,若是不成立的话就显示一条信息。

 [2014-09-24]

 

十一、CodeFirst

codefirst命令
1.Enable-Migrations
2.Add-Migration
3.Update-Database -Verbose

[2014-09-25]

 

十二、Windows2008R2 服务器 IIS7 “Error: Service Unavailable HTTP Error 503. The service is unavailable”(2015-01-12)

解决办法:

a.  打开IIS管理中心,选择应用程序池(application pool)

b.  找到出现这个问题的网站对应的程序池(application pool),右键单击,选择高级(“advanced set”)

c.  单击标示(Identity box)旁边的按钮去修改它(一个新的窗口会弹出来).

d.  输入你的账号以及新密码,而后肯定.

 

 1三、FromUri

1. 默认简单参数都经过URL参数方式传递,例外:

1.1 若是路由中包含了Id参数,则id参数经过路由方式传递;

1.2 若是参数被标记为[FromBody],则能够该参数能够为简单参数,客户端经过POST方式传递:$.ajax(url, '=value'),或者$.ajax({url: url, data: {'': 'value'}});

2. 默认复杂参数(自定义实体类)都经过POST方式传递,例外:

2.1 若是参数值被标记为[FromUri], 则该参数能够为复杂参数;

3. 被标记为[FromBody]的参数只容许出现一次, 被标记为[FromUri]的参数能够出现屡次,若是被标记为[FromUri]的参数是简单参数,该标记能够去掉。

 

 

1四、网站静态化

CDN、模板

 

 1五、 新起一个线程的方法,可使用Thread,BackgroundWorker ,ThreadPool,控件.BeginInvoke,委托.BeginInvoke,Timer。

  建立多线程处理应用程序的最可靠方法是使用 BackgroundWorker 组件。可是,当你须要对线程进行精细控制的时候,就须要Thread。

[2015-05-15]

 

1六、System.Web.Optimization找不到引用

方法以下:打开程序包管理控制台,在控制台中输入:Install-Package Microsoft.AspNet.Web.Optimization按回车。

 

1七、能加载文件或程序集“Antlr3.Runtime”或它的某一个依赖项。

删除 “C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”文件夹下的全部文件后问题解决。

 

1八、Could not load file or assembly 'System.Web.Providers"

Install-Package Microsoft.AspNet.ProvidersInstall-Package Microsoft.AspNet.Providers.Core

相关文章
相关标签/搜索