F# 如何设置owinstartup属性?
我读了F#中的a,但似乎无法应用这里的答案 我有一个非常简单的代码,它给出了与链接问题相同的错误。“这不是有效的常量表达式或自定义属性值。”F# 如何设置owinstartup属性?,f#,owin,F#,Owin,我读了F#中的a,但似乎无法应用这里的答案 我有一个非常简单的代码,它给出了与链接问题相同的错误。“这不是有效的常量表达式或自定义属性值。” 名称空间MyNamespace 打开Microsoft.Owin 开放式Owin 键入Startup()= 成员x.Foo()=() 成员x.ConfigureAuth(应用程序:IAppBuilder)= //app.CreatePerOwinContext() () [] do() 可以让多个文件/类定义程序集属性吗? 如果不是,将assemblyi
名称空间MyNamespace
打开Microsoft.Owin
开放式Owin
键入Startup()=
成员x.Foo()=()
成员x.ConfigureAuth(应用程序:IAppBuilder)=
//app.CreatePerOwinContext()
()
[]
do()
可以让多个文件/类定义程序集属性吗?
如果不是,将assemblyinfo.fs文件移近项目底部是否可以(不脏)
最大的问题是,如何编译此文件?如果您添加
成员\uuuuuu.配置
它应该自动检测它:
namespace MyNamespace
open Microsoft.Owin
open Owin
type Startup() =
member x.Foo() = ()
member x.ConfigureAuth (app : IAppBuilder) =
//app.CreatePerOwinContext()
()
member x.Configuration (app: IAppBuilder) =
app.Run(fun c -> c.Response.WriteAsync("Hello maslow!"))
此外,如果指定参数,这也适用:
[<assembly: Microsoft.Owin.OwinStartup(startupType = typeof<Startup>)>]
do ()
只是想澄清一下:这是您的assemblyinfo.fs吗?不,不是,它是在
global.asax.fs
ok之前的一个文件-您应该移动[]
放在一个地方-我不认为你真的想在你的Startup
类的构造函数中使用它-通常你想在assemblyinfo.fs中的单个do中使用它,这就是为什么我在C#samples中询问,他们通常会在Startup.cs文件的顶部添加OwinStartup,这可能就是原因。如果你的命名遵循标准惯例,我会尽量避免。(约定优于配置样式)为什么使用双通配符?和其他代码一样,只有一个x。正确,我从我想做的代码中得到了它。但这是不允许的,所以我补充说。因为当我不在乎它的时候,我就用它。更新了一致性代码您使用.
表示您不关心此实例变量;)-这是一个约定,fspowertools理解它。例如,是的,我有点喜欢。
对于一个你不打算使用的实例变量,它没有被广泛使用,它类似于“忽略通配符”,但实际上是一个标识符,与x、xs、ls、this或me非常相似。x是最常用的,也是最短的:-)
[<assembly: Microsoft.Owin.OwinStartup(startupType = typeof<Startup>)>]
do ()
namespace MyNamespace
open Owin
open Microsoft.Owin
type Startup() =
let configureAuth (app: IAppBuilder) =
//app.CreatePerOwinContext()
()
member __.Configuration (app: IAppBuilder) =
configureAuth app
app.Run(fun c -> c.Response.WriteAsync("Hello maslow!"))