what I would do is read the content of the file in to an array and send that to the client. in that case you would need to include the file type probably, better yet you can create a wrapper for it
[Serializable]
class Filewrapper
{
public byte[] FileContent { get; private set; }
public string FileName { get; private set; }
public Filewrapper()
{ }
public Filewrapper(byte[] content, string name)
{
FileContent = content;
FileName = name;
}
}
then your service would return something like this
string strpath="file path";
Filewrapper fl = new Filewrapper(File.ReadAllBytes(strpath),Path.GetFileName(strpath));
hope this helps