プロジェクト (Winforms と Web サービス プロジェクト) にそれぞれ 2 つのデータベースがあり、プロジェクト 1 からプロジェクト 2 にデータを送信するために Entity Framework を使用してクエリを実行しています。クエリ経由で送信しますか?
これは私のWebサービスコードです:
// Entity Framework
Person sd = new Person();
// Method to get data from winforms app
public void GetData(string name,string picture)
{
sd.name= name;
sd.picture= ImageToByteArray(picture);
context.AddToPerson(sd);
context.SaveChanges();
}
//Method to save the image into database
private Byte[] ImageToByteArray(string source)
{
FileInfo fInfo = new FileInfo(source);
long sizeByte = fInfo.Length;
FileStream fs = new FileStream(source, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] data = br.ReadBytes((int)sizeByte);
return data;
}
そして、これは私のWinformsコードです:
WebService3SD.Service1SoapClient oService = new WebService3SD.Service1SoapClient();
private void SendData()
{
Driver dr = context.Drivers.FirstOrDefault(d => d.name == "name1");
oService.GetData(dr.name,????);//here i have no idea what i have to do ?!
}
そのためには、画像を文字列に変換する方法が必要です。