,为了简便起见,我们就用一个String变量来摸拟XML文档:
public string GetXmlString(ArchiveDetail myMsg,string[] useridList)
{
string xml="<?xml version=\"1.0\" encoding=\"gb2312\" ?>";
xml+="<ArchiveMsg ";
xml+="Title=\""+myMsg.Title+"\" ";
xml+="UserID=\""+myMsg.UserID+"\" ";
xml+="Author=\""+myMsg.Author+"\" ";
xml+="SendTime=\""+myMsg.SendTime.ToString()+"\" ";
xml+="Department=\""+myMsg.Department+"\" ";
xml+="AttachFile=\""+myMsg.AttachFilepath+"\" ";
xml+="ReceiveList=\""+myMsg.ReceiveList+"\" ";
xml+="Body=\""+myMsg.Body+"\">";
foreach(string i in useridList)
{
xml+="<MsgList UserID=\""+i+"\"/>";
}
xml+="</ArchiveMsg>";
return xml;
}
然后就是调用这个存储过程的函数:
public bool SendArchiveMsg(ArchiveDetail myMsg,string[] useridList)
{
string xml=this.GetXmlString(myMsg,useridList);
try
{
SqlParameter[] prams={ data.MakeInParam("@xml",SqlDbType.VarChar,8000,xml)
};
SqlConnection con = new
SqlConnection("server=127.0.0.1;uid=sa;pwd=sa;database=mydatabase");
con.Open();
SqlCommand cmd = new SqlCommand("upArchiveMsgInsertMsg", con);
cmd.CommandType = CommandType.StoredProcedure;
foreach (SqlParameter parameter in prams)
cmd.Parameters.Add(parameter);
cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
&n 上一页 [1] [2] [3] [4] 下一页 [Sql Server]使用Microsoft SQL Server 2000的XML查询 [Sql Server]sqlserver2000的jdbc驱动和PreparedStatement的性…
|