业务层中的私有静态const

本文关键字:静态 const 业务 | 更新日期: 2023-09-27 18:14:45

我正在为移动应用程序编写Web api,该应用程序使用httpResponseMessages进行回复。我遇到了一个问题,我太新手了,无法解决。

基本上,在我的业务层类库中,我有一个文件的私有引用:

 private const string FiFile = @"C:'DirectoryFile'FI.dat";

此const被我的解决方案的另一部分(Web页面)调用,并且在使用移动呼叫时从未使用或调用。

但是,如果我部署移动api,服务器上没有这个目录,它会抛出一个异常。

我基本上在一个解决方案中有4个项目,一个用于web,一个用于移动,并且都有对业务层的引用。

你能告诉我怎样才能防止这种情况发生吗?

我能阻止它的唯一方法,就是创建上面的文件夹/文件。

**更新**错误如下:

{"Message":"An error has occurred.","ExceptionMessage":"The type initializer for BusinessLayer.BIFacade' threw an exception."
ExceptionMessage":"Could not find a part of the path 'C:''DirectoryFile''FI.dat'.

* UPDATE *当我调试并使用fiddler进行api调用时,visual studio停在这里:

private static readonly Dictionary<string, BiData> SBicDirectory =
        File.ReadAllLines(FiFile).ToDictionary(line => line.Substring(3, 11), line => CreateBiData(line));

,这是它试图使用FiFile const的地方,它在构造函数中。

* EDIT *天啊,很晚了。它在构造函数中,所以你猜怎么着:-)

业务层中的私有静态const

作为一个提线木偶-因此它在构造函数中,将始终被调用。对不起所有人。