我在F#中阅读similar problem但似乎无法在此处应用答案。
我有非常简单的代码,它提供与链接问题相同的错误。 “这不是有效的常量表达式或自定义属性值。”
namespace MyNamespace
open Microsoft.Owin
open Owin
type Startup() =
member x.Foo() = ()
member x.ConfigureAuth (app : IAppBuilder) =
//app.CreatePerOwinContext()
()
[<assembly: OwinStartup(typeof<StartUp>)>]
do ()
是否可以让多个文件/类定义程序集属性? 如果没有,将assemblyinfo.fs文件移到项目底部是否可以(不脏)?
最大的问题,如何编译?
答案 0 :(得分:2)
如果您添加member __.Configuration
,则会自动检测到它:
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 ()
我可能会坚持使用看起来有点不同的Startup.fs
文件:
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!"))