【发布时间】:2015-01-12 01:26:39
【问题描述】:
我不确定这是 F# 特定的还是其他问题,但在尝试本地调试 Azure 云服务时可能会导致以下错误消息:
所讨论的 Web 角色似乎不是 Web 应用程序类型的项目。
我在解决方案中添加了一个 empty F# web api 项目(它添加了 Global.asax 等,我添加了一个 OWIN 启动类 Startup 等),然后从我选择的现有云服务项目中Roles 并选择了Add -> Web Role Project in solution,它会找到 F# web 项目(其项目类型 guid 是 349C5851-65DF-11DA-9384-00065B846F21 和 F2A71F9B-5D33-465A-A702-920D77279786),其中第一个似乎正是定义 web 应用程序类型的 GUID。
但是,当我尝试在本地启动云项目时,我收到上述错误消息。我有一个 C# Web 角色项目,当我删除 F# 项目时该项目将启动。如果我删除此 F# web 角色 项目,我还有以 C# web 角色项目开头的 F# worker 角色 项目。如果我将 F# Web 项目设置为启动项目,它会正常启动和运行。
现在,我想知道这是否与 F# 有关,或者此错误消息是否也会出现在 C# 中,但我在 Google 上没有找到任何东西。任何人都可以对此有所了解吗?
Package/Publish Web 选项卡会给出以下错误消息
尝试加载页面时发生错误。指定的演员表无效。
我怀疑这无关紧要,可能只是 VS 如何处理项目或 F# MVC 5 template 中的一个错误。
它看起来像是一个解决方案,将 e Web 角色创建为 C# 项目,然后像普通 F# 项目一样包含 Web 项目。需要注意的是,在此期间 F# Web API 模板已更新。截至目前,我使用了 1.13 版本的 F# MVC 模板中的 Web API 2.2 和 Katana 3.0。作为许多事情的一个好处,它看起来这个模型具有减少部署包大小的额外好处,正如 Olaf Loogman 在Reducing the size of an Azure Web Role deployment package 的博客中所写的那样。
可以从Tips for Publishing Multiple Sites in a Web Role 获得有关为一个角色发布多个站点的相当简单的说明。
【问题讨论】:
标签: c# azure f# azure-web-roles