0

我有一个 ClassLibrary 项目,这是我的业务层 - Demo.Business

对于这个类库,

I have folder in the class library as below
                TRT
                 |
                TRT.cs
                TRTDetails.cs
                TRTFiles(Folder)
                 |
                **TRTFile.txt**

在 TRT.cs 类中,我有一个方法

public void UpdateDetails()
{
   var typeSeq = from val in TRTDetails.Read**(@"TRTFile.txt")**
}

现在我已将此类库“Demo.Business.dll”的引用添加到我的控制台应用程序 - “DemoProcess.exe”。在上面的控制台应用程序中,我正在调用方法“UpdateDetails()”,如下所示:

public void CallMethod()
{
   UpdateDetails();
}

如何在类库的方法“UpdateDetails()”中指定文件“TRTFile.txt”的路径?

我尝试使用 System.IO.Path.GetDirectoryName

(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)

它总是给出执行应用程序的路径。IE

C:\\Projects\\Demo.Process\\bin\\Debug

我怎样才能得到路径

C:\\Projects\\Demo.Business\\TRT\\TRTFiles............
4

1 回答 1

1

有两种方法可以做到这一点:

I. 这可以使用相对路径来完成。如果您的dll也位于Debug文件夹中,则以下内容path = @"..\..\..\Demo.Business\TRT\TRTFiles\"将完成工作。

首先..\会让我们到C:\\Projects\\Demo.Process\\bin\\.
第二个..\会让我们C:\\Projects\\Demo.Process\\
第三..\将让我们到C:\\Projects\\

二、或者通过使用用于编写 Visual Studio 扩展的类(可扩展性EnvDTE命名空间等),它们提供了获取有关项目及其内容的所有信息的功能。但这很复杂。

于 2012-10-02T10:07:26.423 回答