2011-04-30 136 views
8

我試着寫一個簡單的F#ASP.Net MVC應用程序F#Global.asax - 語言不支持?

伊夫添加在Global.asax如下

<%@ Application Inherits="WebApplication.Core.Global" Language="F#" %> 

然後在一個單獨的程序集引用我有

namespace WebApplication.Core with a type Global() = etc 

獲得一個'F#'不是支持的語言。

我無法做到這一點嗎?

感謝

回答

7

你需要在web.config中添加類似如下:

<compiler language="F#;f#;fs;fsharp" 
      extension=".fs" 
      warningLevel="4" 
      type="Microsoft.FSharp.Compiler.CodeDom.FSharpAspNetCodeProvider, 
      FSharp.Compiler.CodeDom, Version=1.9.6.2, 
      Culture=neutral, 
      PublicKeyToken=a19089b1c74d0809"> 
    <providerOption name="CompilerVersion" value="v3.5" /> 
    <providerOption name="WarnAsError" value="false" /> 
</compiler> 

來源和更多的細節:http://codebetter.com/matthewpodwysocki/2008/10/07/asp-net-mvc-with-nhaml-f-edition/

+4

您可以通過將類實現避免這樣做你的global.asax(一個System.Web.HttpApplication)在F#程序集中,並在global.asax的「Inherits」屬性中引用這個類型。這就是F#MVVM模板的工作原理(可在Visual Studio在線模板中使用)。 – Robert 2011-05-01 06:36:10

+0

@Robert:你可以發表你的評論作爲一個新的答案(我會upvote它)? – knocte 2015-01-23 11:29:03