【发布时间】:2018-01-27 05:11:52
【问题描述】:
我一直在使用 Visual Studio 2017 中支持 .NetStandard 1.6 的新版本 Akka.Net。由于 Akka.Net Configuration 的特殊性,它使用 HOCON 格式进行配置。以前的版本在 app.config 或 Web.config 中嵌入了易于阅读的 HOCON 配置。另一种选择是使用接受字符串对象的 ConfigurationFactory.ParseString 方法。但是从字符串中解析 HOCON 对于小的配置部分很方便。就我而言,我留下了这个 ParseString 配置,它甚至没有按预期工作。 我想出了这个:
var configString = @"akka {
log-config-on-start = on
stdout-loglevel = INFO
loglevel = DEBUG
loggers= ""[Akka.Logger.Serilog.SerilogLogger, Akka.Logger.Serilog]""
actor {
debug {
receive = on
autoreceive = on
lifecycle = on
event-stream = on
unhandled = on
}
}
akka.persistence {
journal {
plugin = ""akka.persistence.journal.sqlite""
sqlite {
class = ""Akka.Persistence.Sqlite.Journal.SqliteJournal, Akka.Persistence.Sqlite""
plugin-dispatcher = ""akka.actor.default-dispatcher""
connection-string = ""Data Source = F:\\SqliteDb\\Sample.db3""
table-name = event_journal
metadata-table-name = journal_metadata
auto-initialize = on
}
}
snapshot-store {
plugin = ""akka.persistence.snapshot-store.sqlite""
sqlite {
class = ""[Akka.Persistence.Sqlite.Snapshot.SqliteSnapshotStore, Akka.Persistence.Sqlite]""
connection-string = ""Data Source = F:\\SqliteDb\\Sample.db3""
table-name = snapshot_store
auto-initialize = on
}
}
}
";
var config = ConfigurationFactory.ParseString(configString);
ActorSystem.Create("AkkaSystem", config);
没有按预期工作。 我们如何使用 appsetting.json 在 Asp.Net 核心中配置 akka.net?或者有更好的方法吗?
【问题讨论】:
-
我现在的解决方法。我创建了一个文件。使其成为嵌入式资源。然后通过 ConfigurationFactory.FromResource
("resoucefilename.txtt"); 加载它 -
目前没有规范的方法可以做到这一点 - 我们正在讨论在即将发布的次要版本中添加一个。
-
在这里查看我对类似问题的回答:stackoverflow.com/questions/36699889/…
标签: .net-core visual-studio-2017 akka.net .net-standard