2011-02-26 7 views
10

F # 코드에서 Ninject를 사용하는 사람이 있습니까? 어떤 힌트를 주셔서 감사합니다.Ninject와 F #?

+0

구체적인 문제가 있습니까? –

+0

나는 어떤 문제도 겪지 않았다. 사실 F #에서 Ninject를 사용하고 싶지만 샘플 코드/프로젝트를 찾을 수 없습니다. 당신이 공유 할 수있는 것이 있습니까? 간단한 작업 예제는 – amirmonshi

답변

13

F #에서 Ninject를 사용하는 것과 관련하여 특별한 것은 없다고 생각합니다. 사무라이/IWeapon/검의 Ninject에 예는 다음과 같습니다 : 암시 적 생성자와 형식 유추 같은

open Ninject 

type IWeapon = 
    abstract Hit: string -> unit 

type Sword() = 
    interface IWeapon with 
     member x.Hit s = printfn "Slash %s" s  

type Samurai(weapon: IWeapon) = 
    member x.Attack target = 
     weapon.Hit target 

[<EntryPoint>] 
let main args = 
    use kernel = new StandardKernel() 
    kernel.Bind<IWeapon>().To<Sword>() |> ignore 
    kernel.Bind<Samurai>().ToSelf() |> ignore 
    let samurai = kernel.Get<Samurai>() 
    samurai.Attack "enemy" 
    0 

F 번호 기능 코드가 매우 간결합니다.

+0

위대한 일을 할 것입니다! 예를 들어 주셔서 감사합니다 – amirmonshi

+0

이것도 주셔서 감사합니다 ... 검색하고 내 질문에 대한 정확한 답변으로 이것을 발견했습니다. – ChargerIIC