指定类库中文件的路径,类库是从控制台应用程序调用的类库中的方法

时间:2012-10-01 23:32:31

标签: dll

我有一个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)

总是提供执行应用程序的路径。 即

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

我如何获得路径

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

1 个答案:

答案 0 :(得分:1)

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

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

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

II。 或者通过使用用于编写visual studio扩展(ExtensibilityEnvDTE命名空间等)的类,它们提供了获取有关项目及其内容的所有信息的功能。但它很复杂。