using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using TestWCF_Client.MyWCFReference;
using WcfServiceLibrary1;
namespace TestWCF_Client
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(TestAssembly("Data", 23)); ;
MyWCFServiceClient client = new MyWCFServiceClient();
Console.WriteLine(client.GetData(2));
CompositeType cType = new CompositeType()
{
BoolValue = true,
StringValue = "Hello World!"
};
Console.WriteLine(client.GetDataUsingDataContract(cType).StringValue);
string path = @"F:\projects\MyTest.txt"; ;
if(File.Exists(path))
{
File.Delete(path);
}
using(FileStream fs=File.Create(path))
{
AddText(fs, "Hello");
for(int i=0;i<20;i++)
{
Console.WriteLine(Convert.ToChar(i).ToString()); ;
}
}
//open the stream and read it back
using(FileStream fs=File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding uTF8Encoding = new UTF8Encoding(true);
while(fs.Read(b, 0, b.Length) >0)
{
Console.WriteLine(System.Text.Encoding.ASCII.GetString(b));
}
}
Console.Read();
}
public static object TestAssembly(string str,int n)
{
string path = Environment.CurrentDirectory + @"\WcfServiceLibrary1.dll";
Assembly assembly = Assembly.LoadFrom(path);
Type type=assembly.GetType("WcfServiceLibrary1.MyWCFService");
object o = Activator.CreateInstance(type);
MethodInfo method = type?.GetMethod("Get" + str);
object result = method?.Invoke(o, new object[] { n });
return result;
}
public static void AddText(FileStream fs, string text)
{
byte[] array = new UTF8Encoding(true).GetBytes(text); //---------------------------------------------------------
fs.Write(array, 0, array.Length);
}
}
}