方法一:
假如有这样的命名空间:namespace UI.Flight.Domestic.Online.Case.Test.BookingOrdersFunctionTest
string tmpPath = this.GetType().Namespace.ToString();
//UI.Flight.Domestic.Online.Case.Test.BookingOrdersFunctionTest
int tmpPathLength = tmpPath.Split('.').Length;
//7
string tmpFileName = this.GetType().ToString();
//UI.Flight.Domestic.Online.Case.Test.BookingOrdersFunctionTest.TestCase_Booking_Order
int tmpFileLength = tmpFileName.Split('.').Length;
//8
path = string.Format(@"\Data\CaseData\{0}\{1}.xml", tmpPath.Split('.')[tmpPathLength - 1], tmpFileName.Split('.')[tmpFileLength - 1]);
\Data\CaseData\BookingOrdersFunctionTest\TestCase_Booking_Order.xml
方法二:
RequestXmlPath = Path.Combine("Flight.Product", "Flight.Product.ProductWS", "FlightPolicySearchRequest", "FlightPolicySearchRequest.xml");
private string requestXmlPath;
protected string RequestXmlPath
{
set
{
requestXmlPath = value;
//这时value的值为Flight.Product\Flight.Product.ProductWS\FlightPolicySearchRequest\FlightPolicySearchRequest.xml
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, requestXmlPath);
//这时path的值为D:\study\API.Flight\Demo\bin\Debug\Flight.Product\Flight.Product.ProductWS\FlightPolicySearchRequest\FlightPolicySearchRequest.xml
if (File.Exists(path))
{
Request = XDocument.Load(path);
}
else
{
throw new FileNotFoundException(string.Format("文件不存在。路径:{0}", path));
}
}
get
{
return requestXmlPath;
}
}