私は名前、姓などの基本情報を作成することができるwpfスタッフ作成ウィンドウを持っており、これはREST Webサービスにスタッフを作成します。例:Excelドキュメントの内容をwebservice
クライアント側:
private void CreateStaffMember_Click(object sender, RoutedEventArgs e)
{
string uri = "http://localhost:8001/Service/Staff";
StringBuilder sb = new StringBuilder();
sb.Append("<Staff>");
sb.AppendLine("<FirstName>" + this.textBox1.Text + "</FirstName>");
sb.AppendLine("<LastName>" + this.textBox2.Text + "</LastName>");
sb.AppendLine("<Password>" + this.passwordBox1.Password + "</Password>");
sb.AppendLine("</Staff>");
string NewStudent = sb.ToString();
byte[] arr = Encoding.UTF8.GetBytes(NewStudent);
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(uri);
req.Method = "POST";
req.ContentType = "application/xml";
req.ContentLength = arr.Length;
Stream reqStrm = req.GetRequestStream();
reqStrm.Write(arr, 0, arr.Length);
reqStrm.Close();
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
MessageBox.Show("Staff Creation: Status " + resp.StatusDescription);
reqStrm.Close();
resp.Close();
}
Webサービス側:Excelスプレッドシートから
#region POST
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml, UriTemplate = "/Staff")]
void AddStaff(Staff staff);
#endregion
public void AddStaff(Staff staff)
{
staff.StaffID = (++eCount).ToString();
staff.Salt = GenerateSalt();
byte[] passwordHash = Hash(staff.Password, staff.Salt);
staff.Password = Convert.ToBase64String(passwordHash);
staffmembers.Add(staff);
}
すべてのこと側の罰金、しかしImが探しに "輸入" スタッフの詳細ではなく、インポートが正しい単語であるかどうかは確かですが、そのようなスプレッドシートに含まれているファーストネームとラストネームを取り出し、それらをクライアント側のwpfアプリケーションからWebサービスに追加したいとします。
どうすればいいですか?私は自分のファイルを開くダイアログを持っている:
private void Import_Click(object sender, RoutedEventArgs e)
{
Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();
// Show open file dialog box
Nullable<bool> result = dlg.ShowDialog();
// Process open file dialog box results
if (result == true)
{
// Open document
string filename = dlg.FileName;
}
}
だから私は、その後どのように私は、内のコンテンツを取得し、Webサービスに送信するに行くか、私のExcelのスプレッドシートを開きますか?/
名前を手動で入力するのではなく、スタッフを追加する自動化された方法を探していますが、スタッフがExcelのドキュメントに名前を付けることができたのを見て、私は開いたファイルを望んでいましたダイアログボックス。内部の構造は常に同じファーストネームとラストネームになります。最初の名前は、列「B」の姓と列が「」「C」は
(カラム:
これは決してあなたの質問に答えてくれます...しかし、DBにデータを保存するのはそれほど簡単ではないでしょうか? – Pynner