首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在F#源文件(*.fs)中使用AKKA?

如何在F#源文件(*.fs)中使用AKKA?
EN

Stack Overflow用户
提问于 2020-10-03 16:50:08
回答 1查看 407关注 0票数 1

我可以在Visual代码中的F#文件中使用AKKA参与者,但是当我在.fs文件中使用它们时,它会报告一个错误:

error FS0039:未定义命名空间或模块'Akka‘。

即使我在我的项目中下载了带有dotnet add Project package Akkadotnet add Project package Akka.FSharp --version 1.4.10的AKKA包,并将它们包括在.fs文件中:

代码语言:javascript
复制
module P

open System
open Akka
open Akka.Actor
open Akka.FSharp
EN

回答 1

Stack Overflow用户

发布于 2020-10-04 01:58:49

您当然可以从fs文件中引用fsx文件,因为它是一个非常常见的快速原型工作流程。如果有必要,您可以使用#if INTERACTIVE#endif杂注来分隔已编译和fsx代码部分。

这将进入Library.fs,该项目引用并下载了FileHelpers nuget包:

代码语言:javascript
复制
module SO201004.Library
open FileHelpers

let fname = @"C:\temp\navdb.csv"

[<CLIMutable; DelimitedRecord(",")>]
type NavDB = {
    Path: string
    Frequency: string
    LastAccess: string
}

let fHelper = FileHelperEngine<NavDB>()
let navDB = fHelper.ReadFile(fname)

现在,在您的Script1.fsx文件中,您可以#load上面的模块,也可以#r任何其他库:

代码语言:javascript
复制
#r @"C:\Users\USERNAME\.nuget\packages\filehelpers\3.4.1\lib\netstandard2.0\FileHelpers.dll"
//#r "nuget: FileHelpers"
#load "Library.fs"

open SO201004

Library.navDB

我只是打开SO201004命名空间来访问Library模块。如果我调用navDB,则返回解析的CSV (解析器在Library文件/模块中定义)。

""C:\Users\USERNAME\OneDrive\Documents\Source\WebDev\FruitsProject"“{ Path =”LastAccess =“LastAccess =”132160581961691649“};{ Path =”12“LastAccess=”132161111431384871“}}]

在预览版本中,您应该能够使用我注释掉的#r nuget:指令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64186700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档