Skip to content

DejanMilicic/OrleansFsharp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orleans FSharp Baseline

This is a baseline example of using Orleans with F#.

Versions

  • FSharp : 9
  • .NET : 9.0
  • Orleans : 9.1.2

F# fixes

At the moment, four fixes are needed. All of them are marked with 'FSHARPFIX' comment in this project.

  1. Host project either needs to be in C#, or you need to create a C# class with the following attribute

    [assembly: GenerateCodeForDeclaringAssembly(typeof(TYPE_FROM_F#_PROJECT_WITH_GRAINS))]
  2. In your F# Host project, you need a module that will expose assemblies to the Orleans runtime

  3. Grains project needs to expose internal members to code gen project. Add the following

     open System.Runtime.CompilerServices
     [<assembly: InternalsVisibleTo("C#_PROJECT_WITH_CODEGEN_CLASS")>]
     do()
  4. For each F# type, you need an explicit attribute that will instruct Orleans to generate code for it

     [<GenerateSerializer>]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published