Visual Studio, c #, сервер SQL 2005.
Я пытаюсь сопоставить тип данных таблицы .dbml с моим файлом .cs. Цель состоит в том, чтобы разрешить загрузку изображения в базу данных. Пока это не работает. Кажется, проблема связана с типом файла для Столбец FileContent. Я пробовал несколько вариантов, но ни один из них не работал.
<Column Name="FileName" Type="System.String" DbType="NVarChar(100)" CanBeNull="true" />
<Column Name="FileType" Type="System.String" DbType="NVarChar(100)" CanBeNull="true" />
<Column Name="FileSize" Type="System.int32" DbType="int" CanBeNull="true" />
<Column Name="FileContent" Type="System.Data.Linq.Binary" DbType="varbinary(MAX)" CanBeNull="true" />
Столбцы SQL Server
Applicant_PK (PK, int, notnull)
FileName (nvarchar (100), null)
FileType (nvarchar (100), null)
FileSize (int, null)
FileContent (varbinary (max), null)
void CreatePreApplication()
{
Pre_Application = new PreApplication();
Pre_Application.FileName = Path.GetFileName(ctrFile.PostedFile.FileName);
Pre_Application.FileType = ctrFile.PostedFile.ContentType;
Pre_Application.FileSize = ctrFile.PostedFile.ContentLength;
byte[] fileContent = new byte[ctrFile.PostedFile.ContentLength];
ctrFile.PostedFile.InputStream.Read(fileContent, 0, ctrFile.PostedFile.ContentLength);
Pre_Application.FileContent = fileContent;
public class PreApplication
{
public int DatabaseId {get; задавать; }
public String FileName {get; задавать; }
public String FileType {get; задавать; }
public int FileSize {get; задавать; }
public byte [] FileContent {get; задавать; }
public PreApplication ()
{
PreApplicationsDataContext db =
new PreApplicationsDataContext(
"Data Source=THESQLSERVER;Initial Catalog=THECONNECTIONSTRING;Integrated Security=True");
tblPreApplication preApp = new tblPreApplication();
preApp.FileName = FileName;
preApp.FileType = FileType;
preApp.FileSize = FileSize;
preApp.FileContent = (byte[])FileContent;
try
{
db.tblPreApplications.InsertOnSubmit(preApp);
db.SubmitChanges();
DatabaseId = preApp.Applicant_PK;
return preApp.Applicant_PK;
}
catch
{
DatabaseId = 0;
return 0;
}
}
Спасибо за просмотр. Я новичок в программировании, поэтому, если вы зададите мне вопрос, имейте это в виду.