在ASP.NET MVC4專案中加入WCF Service

底下是在現有ASP.NET MVC4專案中加入WCF Service流程

1.在專案中新增一個要放置WCF Services的資料夾, 例如WebServices

新增一個檔案WcfServiceObject.svc, 輸入以下內容
   1: <%@ ServiceHost Language="C#" Debug="true" Service="Samples.WcfServiceObject" %>

1

2.在專案新增參考Add References

   1: System.ServiceModel

   2: System.ServiceModel.Activation

   3: System.ServiceModel.Web

3.修改你的WcfServiceObject.svc.cs

   1: namespace Samples

   2: {

   3:     [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

   4:     public class WcfServiceObject

   5:     {

   6:       public string Ping(string data)

   7:         {

   8:           return "Hello " + data;

   9:         }

  10:     }

  11: }

4.修改你的Global.asax.cs

   1: using System.ServiceModel.Activation;

   2: public static void RegisterRoutes(RouteCollection routes)

   3: {

   4:   //WS 是 Client 訪問的路徑

   5:   //Samples.WcfServiceObject 是 WebService Class 的名稱

   6:   RouteTable.Routes.Add(new ServiceRoute("WS",

   7:         new WebServiceHostFactory(),

   8:     typeof(Samples.WcfServiceObject)));

   9: }

5.修改你的Web.config

   1: <system.serviceModel>

   2:   <behaviors>

   3:     <serviceBehaviors>

   4:       <behavior name="">

   5:          <serviceMetadata httpGetEnabled="true" />

   6:          <serviceDebug includeExceptionDetailInFaults="false" />

   7:       </behavior>

   8:     </serviceBehaviors>

   9:   </behaviors>

  10:   <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true" />

  11:     <standardEndpoints>

  12:       <webHttpEndpoint>

  13:         <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true"/>

  14:       </webHttpEndpoint>

  15:     </standardEndpoints>

  16:   </system.serviceModel>

  17: </system.serviceModel>

以下是執行結果

2

3

張貼在 MVC4 | 發表留言

TypeScript

Install Node.js v0.10.20 from http://nodejs.org/

Run Node.js command prompt

C:\>npm install -g typescript

Write helloworld.ts

C:\>tsc helloworld.ts

Download TypeScript Definitely Typed from https://github.com/borisyankov/DefinitelyTyped

Unzip it to D:\Demo\DefinitelyTyped

張貼在 JavaScript | 發表留言

IIS 6.1 for Win7 ASP.NET 呼叫 EXE 程式

Google 搜尋好久, 並沒有解決問題, 最後終於找到解決方法

在IIS6 –> 選取對應你的站台的”應用程式集區” –>  進階設定 –>  識別 ApplicationPoolIdentity 修改為 LocalSystem

1

接著到Win7 Start –> 控制台 –> 系統及安全性 –> 系統管理工具 –> 服務

選取 “World Wide Web Publishing Service”—> 內容 –> 登入 –> 允許服務與桌面互動 打勾

2

接下來重新啟動IIS, 在你的ASP.NET 中進行呼叫Process.Start 吧~

張貼在 ASP.NET | 發表留言

Sublime + TypeScript 安裝設定

http://www.sublimetext.com/ 下載 Sublime v2.0.2

打開Sublime, 快捷鍵「Ctrl + `」從下面的網頁「Sublime Package Control – Install」http://wbond.net/sublime_packages/package_control/installation 有一長串的指令碼,複製貼上執行

import urllib2,os; pf='Package Control.sublime-package'; ipp =
sublime.installed_packages_path(); os.makedirs( ipp ) if not
os.path.exists(ipp) else None; urllib2.install_opener(
urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join(
ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/'
+pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text
to finish installation')
          

如果是Sublime 3, 則用

import urllib.request,os; pf = 'Package Control.sublime-package';
ipp = sublime.installed_packages_path(); urllib.request.install_opener(
urllib.request.build_opener( urllib.request.ProxyHandler()) );
open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen(
'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

選取 Preferences—>Package Control

如果是在編輯狀態下而想要用Command Palette的方式來叫出Package Controll的指令,可用快速鍵呼叫出Command Palette「Ctrl + Shift + P」

1

輸入Install Package

2

輸入TypeScript 和 TypeScript Compiler 安裝這兩個Package, 然後重新啟動

選取Sublime 功能Tools—>Build System—>New Build System

3

輸入以下內容
{
    "cmd": ["tsc","$file"],
    "file_regex": "(.*\\.ts?)\\s\\(([0-9]+)\\,([0-9]+)\\)\\:\\s(...*?)$",
    "selector": "source.ts",

    "windows": {
        "cmd": ["tsc.cmd", "$file"]
    }
}
你就可以編輯*.ts 之後, 按下Ctrl+B 即可看到編譯結果
修改Sublime 預設編輯Tab 參數,  Preference—>Setting-Default
用 Ctrl + F 找到下面以下兩行設定,就可以開始修改!
    // The number of spaces a tab is considered equal to
“tab_size": 4,
// Set to true to insert spaces when tab is pressed
“translate_tabs_to_spaces": false,
張貼在 電腦和網際網路 | 標記 | 發表留言

蕭瑟

回首向來蕭瑟處,也無風雨也無情
張貼在 生活 | 發表留言

佛曰

一花一世界,一木一浮生,一草一天堂一葉一如來,一砂一極樂,一方一凈土,一笑一塵緣,一念一清靜
張貼在 生活 | 發表留言

SQL Server 2005 新增資料庫失敗:20476 ?

當我安裝完SQL Server 2005之後, 使用SQL Server 2005 Management Studio Express 嘗試建立Test 資料庫時, 卻出現下面的錯誤訊息

資料庫 ‘Test’ 的 Create 失敗。  (Microsoft.SqlServer.Express.Smo)

如需說明,請按一下: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.4035.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Create+Database&LinkId=20476——————————
其他資訊:
Collation ‘<伺服器預設值>’ is not valid. (Microsoft.SqlServer.Express.Smo)

如需說明,請按一下: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.4035.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.WrongPropertyValueExceptionText&LinkId=20476

 
從錯誤訊息中看不懂是哪裡有問題? 使用新增資料庫精靈我只有輸入新增的資料庫名稱而已, 其他設定值都用預設組態也沒更動, 按照道理說應該沒問題才對~ 
會不會OS 是英文版而SQL Server 2005 中文版的關係? 重新安裝SQL Server 2005 中文版也無效, 找了好久,
原來是在新增資料庫精靈畫面->選項->定序(C) 這個欄位內容預設值寫著"<伺服器預設值>" 這個地方有問題!!
 
使用下面T-SQL 查詢目前伺服器的設定 

select SERVERPROPERTY (‘collation’)

結果如下

Chinese_Taiwan_Stroke_CI_AS

最後在定序(C)欄位內容改成 "Chinese_Taiwan_Stroke_CI_AS" 精靈就成功建立新的資料庫了~
張貼在 電腦和網際網路 | 發表留言