从服务器访问文件

时间:2014-06-04 07:33:25

标签: c# wcf

我开发了一个WCF服务并且正在使用另一个应用程序。在该服务中,我有一个xml文件。

访问该文件的方法是什么?

我使用了以下代码:

public string InsertData(string Name, string Email, string Message)
{
    string file = System.Web.Hosting.HostingEnvironment.MapPath("DataFile.xml");
    DataTable dtEmployee = ReadXML(file);
    // adding Employee Object values to datarow.
    DataRow dr = dtEmployee.NewRow();
    dr["Name"] = Name;
    dr["Email"] = Email;
    dr["Message"] = Message;
    dtEmployee.Rows.Add(dr);
    dtEmployee.WriteXml(file);
    return "Success";
}

文件存在于同一个项目中。我该如何访问该文件。您可以从以下屏幕截图中获得想法:

enter image description here

目前该文件为空。

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以使用以下经过检验的代码。

在您的服务界面中添加方法名称,如

    [OperationContract]
    string GetXmlstring();

方法的实现看起来像

public string GetXmlstring()
    {
        var fileName = AppDomain.CurrentDomain.BaseDirectory;
        StreamReader reader = new StreamReader(fileName+"\\DataFile.xml");
        return reader.ReadToEnd();
    }

调用像

这样的方法
        ServiceReference1.Service1Client ss = new ServiceReference1.Service1Client();
        var xmlstring=ss.GetXdoc();

现在xmlstring包含xml字符串。