我使用HTML5和計算MD5在客戶端上傳文件(JavaScript)的 然後在服務器端(處理)我將文件分片的表是這樣的:計算的Md5在服務器端
public void WriteBlobsToDB(byte[] buffer,int id)
{
File_Data fl = new File_Data();
fl.FileId = id;
fl.FileChunks = buffer;
try
{
WiFileData.InsertOnSubmit(fl);
dc.SubmitChanges();
}
catch (ExecutionEngineException e){throw e;}
}
,然後當所有的文件分片被保存在數據庫上我試着去閱讀他們的廣告將它們保存在一個byte[] allData
並在另一個表插入:
public void WriteBlobs(int id, string fileName,int count,byte[] allData)
{
List<chunkInfo> listOfChunks;
File_Data fd = new File_Data();
File_List fl = new File_List();
try
{ var chunks = (from c in FileData
where c.FileId == id
orderby c.Id ascending
select new chunkInfo
{ Id = c.Id,
ChunkData = c.FileChunks.ToArray()
});
listOfChunks = chunks.ToList();
foreach (chunkInfo sChunk in listOfChunks)
{ fl.FileId = id;
fl.FileName = fileName;
int dstoffset = count * sChunk.ChunkData.Length;// count is set to 0 at teh beggginning
Buffer.BlockCopy(sChunk.ChunkData, 0, allData, dstoffset, sChunk.ChunkData.Length);
count++;
}
int l = allData.Length;
fl.FileData = new Binary(allData);
FileList.InsertOnSubmit(fl);
dc.SubmitChanges();
}
catch (Exception){throw;}
}
的代碼工作,我保存數據數據庫和allDatasize與en中的文件大小相同d。我只需要驗證表中Filedata
字段中保存的數據是否寫入。我如何計算md5並進行比較?
感謝
不,我需要使用Linq – laila
@laila來做,請參閱C#代碼/參考的更新編輯 – chadhoc