我使用VS Code在控制台中开发了一个简单的F#Suave应用程序.
目标框架是核心2.0,在本地运行良好.代码System.Runtime 4.3.0由VSTS 构建和打包(引用),然后部署到Azure应用服务.
当我打电话给网站时,它最终将超时使用HTTP 500,同时suave*.log写入例外情况:
未处理的异常:System.IO.FileNotFoundException:无法加载文件或程序集'System.Runtime,Version = 4.2.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一.该系统找不到指定的文件.
这是否意味着某些软件包仍引用4.2.0.0?Azure是错的吗?
在C#中,库可能会暴露一个使用DI容器提供的实现的接口,有什么功能可以解决这个问题?我想在库('库范围')中创建可配置的东西,并且能够从主代码中进行设置.
我有一段漂亮的 F# 代码,将 Pizza 映射到 PizzaModel:
type Cheese = Cheese of string
type Pizza
{
Name: string
Cheese: Cheese
}
type PizzaModel =
{
PizzaName : string
Cheese: string
Toppings: string
}
let mapPizza pizza =
let (Cheese c) = pizza.Cheese
{ PizzaName = pizza.Name; Cheese = c}
Run Code Online (Sandbox Code Playgroud)
是否可以写成不同的东西,我可以将奶酪拆开吗?