我的数据库中有一个 WorkflowInstances 表,其中包含以下字段:ID (int)、名称 (nvarchar(50)、WorkflowID (int)、文档 (varbinary(MAX)强>))。 我想插入一个新的 WorkflowInstance 所以我写了这段代码
Stream myStream = openFileDialogDoc.OpenFile();
if (myStream != null)
{
using (myStream)
{
WorkflowInstance w = new WorkflowInstance();
byte[] bytes = new byte[myStream.Length];
myStream.Read(bytes, 0, (int)myStream.Length);
w.ID = repository.WorkflowsRepository.GetMaxIDWokflowInstance() + 1;
w.Name = textBoxWorkflowInstanceName.Text;
w.CurrentStateID = repository.WorkflowsRepository.GetWorkflowFirstState((int)listBoxMyWorkflows.SelectedValue);
w.WorkflowID = (int)listBoxMyWorkflows.SelectedValue;
w.CreationDate = System.DateTime.Now.ToString();
w.Document = bytes;
RapidWorkflowDataContext context = new RapidWorkflowDataContext();
context.WorkflowInstances.InsertOnSubmit(w);
context.SubmitChanges();
}
}
我在第 15 行遇到错误,错误是:无法将类型 'byte[]' 隐式转换为 'System.Data.Linq.Binary'
最佳答案
System.Data.Linq.Binary
有一个构造函数采用 byte[]
的 1 个参数:
w.Document = new System.Data.Linq.Binary(bytes);
关于c# - 如何将类型 'byte[]' 转换为 'System.Data.Linq.Binary',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18325304/