سلام و خسته نباشید بنده از کدنویسی سه لایه بابت ذخیره تصویر در دیتابیس استفاده میکنم و میخواستم تصویر رو درون بانک ذخیره کنم در تکنولوژی دو لایه جواب میگیرم ولی در کد نویسی سه لایه نیاز دارم. یه کلاس دارم به نام جدول مکانیکی
 public int M_ID;
public string M_SH_Shobeh;
public string M_Name_Mekanaki;
public int M_Sex;
public string M_Name_Moder;
public string M_Tel;
public string M_Mobile;
public string M_Address;
public byte[] M_Sign;
public byte[] M_Logo;
public DateTime M_Date;
public TimeSpan M_Time;
public string M_SMS_Address;
Database db=new Database();
public void ADD()
{
try
{
PersianCalendar pc = new PersianCalendar();
string date = pc.GetYear(DateTime.Now).ToString("0000") + "/" + pc.GetMonth(DateTime.Now).ToString("00") +
"/" + pc.GetDayOfMonth(DateTime.Now).ToString("00");
string time = pc.GetHour(DateTime.Now).ToString("00") + ":" + pc.GetMinute(DateTime.Now).ToString("00") +
":" + pc.GetSecond(DateTime.Now);
db.connect();
string q =
@"insert into Tbl_Mekanaki
(M_ID, M_SH_Shobeh, M_Name_Mekanaki, M_Sex, M_Name_Moder, M_Tel, M_Mobile, M_Address, M_Sign, M_Logo,M_Date, M_Time,M_SMS_Address)
values
(N'"+M_ID+ "', N'" + M_SH_Shobeh + "', N'" + M_Name_Mekanaki + "', N'" + M_Sex + "', N'" + M_Name_Moder + "', N'" + M_Tel + "', N'" + M_Mobile + "', N'" + M_Address + "', '"+M_Sign+"', '"+M_Logo+"',(select dbo.ShamsiToMiladi('"+date+"')), '"+time+"', N'"+M_SMS_Address+"')";

db.docommand(q);
db.distconnect();
}

مقادیر میگیرم و به سمت دیتابیس ارسال میکنم تنها مشکلی که داره ذخیره تصویر رو انجام نمیده
این هم دستورت فرم برای ارسال به کلاس مکانیکی میباشد
 MemoryStream ms = new MemoryStream();
try
{
PicLogo.Image.Save(ms, ImageFormat.Png);
}
catch
{
}
byte[] arrPic = ms.GetBuffer();
ms.Close();


MemoryStream MsSign = new MemoryStream();
try
{
PicSign.Image.Save(MsSign, ImageFormat.Png);
}
catch
{
}
byte[] Arrsign = MsSign.GetBuffer();
MsSign.Close();
Tbl_Mekanaki mekanaki = new Tbl_Mekanaki();
mekanaki.M_SH_Shobeh = TxtShobdeh.Text.Trim();
mekanaki.M_Name_Mekanaki = TxtNameMekanake.Text.Trim();
mekanaki.M_Sex = Convert.ToInt32(CmbSex.SelectedValue.ToString());
mekanaki.M_Name_Moder = TxtNameModer.Text.Trim();
mekanaki.M_Tel = TxtTel.Text.Trim();
mekanaki.M_Mobile = TxtMobile.Text.Trim();
mekanaki.M_Address = TxtAddress.Text.Trim();
mekanaki.M_SMS_Address = TxtSmsAddress.Text.Trim();
mekanaki.M_Logo = arrPic;
mekanaki.M_Sign = Arrsign;
mekanaki.ADD();

ممنون میشم بگید چیکارکنم تا بتوانم تصویر رو ذخیره کنم این هم متن خطا
Implicit conversion from data type nvarchar to varbinary(max) is not allowed. Use the CONVERT function to run this query.
ممنون بابت کمکتان