此問題與標題中所述完全相同。無法引用F#類庫
我有一個便攜式的F#類庫。我已經創建了一個ASP.NET Core Web應用程序(包括.NET Framework和.NET Core),我嘗試添加對我的F#類庫的引用。
嘗試添加引用給出了一個消息:
下列項目不支持作爲參考:
項目類型是目前的項目不支持,不能(原文如此)引用。
這是非常令人失望的,因爲.NET Core現在處於通用狀態。
在解決此錯誤時是否有任何解決方法?
此問題與標題中所述完全相同。無法引用F#類庫
我有一個便攜式的F#類庫。我已經創建了一個ASP.NET Core Web應用程序(包括.NET Framework和.NET Core),我嘗試添加對我的F#類庫的引用。
嘗試添加引用給出了一個消息:
下列項目不支持作爲參考:
項目類型是目前的項目不支持,不能(原文如此)引用。
這是非常令人失望的,因爲.NET Core現在處於通用狀態。
在解決此錯誤時是否有任何解決方法?
我有一個項目,我開始使用.NET核心Beta8位,從那時起我有一個F#庫,我從一個asp.net核心C#應用程序使用。 (順便說一句here是參考從網絡核心基於控制檯應用程序中的F#lib中的RC2基於最少的樣品)
這是我如何做的:
目前(據我所知)沒有在VS沒有模板創建一個基於coreCLR的F#庫(F#下的PLC模板都是基於Full框架的,但即使它在完整框架上運行,仍然無法從asp.net內核引用),因此您必須使用命令行執行此操作。這是通過:
dotnet new --lang F#
這會創建一個你好世界coreCLR F#應用程序。您可以通過修改project.json文件將應用程序轉換爲類庫。
如果你有一個VS解決方案,你點擊「添加」 - >「現有項目」,你可以選擇project.json文件。這樣你就可以將它添加到你的解決方案中(並且,也會創建一個xproj文件)。
所以在這一點上,你將在你的解決方案中擁有基於coreCLR的F#項目。我相信通過右鍵單擊asp.net核心項目,並轉到「添加」 - >「參考」 - >項目 - >解決方案,並選擇F#庫,您可以引用它。如果這不起作用,可以手動完成:只需在asp.net核心應用程序的project.json中的「依賴關係」下列出F#項目即可。
如果您的asp.net核心應用在完整框架上運行,仍然需要執行這些步驟。它其實並不重要。
現在壞的部分:
儘管.NET Core已正式發佈,但ASP.NET Core Web Application中的絕大多數nuget軟件包均已發佈。此外,雖然實體框架標識模型已經被清除,但是當我嘗試實現實體框架遷移時,我嘗試將用戶和角色的關鍵字列從字符串更改爲整數,這引發了一個模糊的錯誤。我知道我可以爲.NET Web應用程序做到這一點,儘管這個過程在某些地方很笨拙。所以現在我已經回到使用.NET Framework Web應用程序。我期待看到ASP.NET Core Web Applications的完全成熟版本。它還沒有準備好,但它看起來非常有前途。
有任何這更近的信息?我試圖讓一個F#類庫在與其他C#asp.net核心項目的解決方案中工作,但沒有任何運氣。在這種情況下,有沒有一個當前正在運行的project.json的好例子? –
@JoeAudette下面是一個更詳細的描述與示例解決方案:http://kalapos.azurewebsites.net/referencing-an-f-library-from-c-on-net-core根據我的知識,是現階段(這就是我今天的工作方式......)。根據路線圖「更好的IDE體驗與F#語言服務上的工作空間支持」將出現在RTM工具中(這實際上意味着我不知道......)https://blogs.msdn.microsoft.com/dotnet/ 2016/07/15/net-core-roadmap/ – gregkalapos
@gegkalapos,謝謝!我遇到的問題是我的F#類庫我想做一個控制器,在project.json中我已經添加了所需的依賴關係,但是VS表示命名空間在我的代碼的這一行中不可用,就像它沒有看到我引用的依賴關係: 打開Microsoft.AspNetCore.Mvc –