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

相關文章
相關標籤/搜索