PDA

View Full Version : آموزش: نرم افزار ساده دبیرخانه



spring69
سه شنبه 29 شهریور 1390, 02:33 صبح
سلام
چند وقت پیش یه برنامه دبیر خانه ساده نوشتم. (پروژه دانشجویی)
دیدنش خالی از لطف نیست.
دوستان نظر بدید.
بانک: sqlexpress 2008
دانلود پروژه و بانک (http://www.persiangig.com/pages/download/?dl=http://mohammadspring.persiangig.com/other/Dabirkhane.rar)
رمز پیشفرض:
username:admin
password:123
اسکریپت بانک برای نسخه های دیگر اسکیوال رو از اینجا (http://barnamenevis.org/attachment.php?attachmentid=75733&d=1316949159) دانلود کنید.

ya30ien2
سه شنبه 29 شهریور 1390, 16:10 عصر
لطفا در قسمت نمونه برنامه ها بزار برای دانلود
با تشکر

spring69
یک شنبه 03 مهر 1390, 01:03 صبح
چه استقبال گرمی :متعجب:
دوستان کسی نظری نداشت؟:متفکر:
اصلا کسی دانلود کرده؟

ahrimaneahurai
یک شنبه 03 مهر 1390, 12:29 عصر
دستابیس ریستور نمیشه. با ۲۰۰۸ هست؟ اگه دبیرخونه ساده هست و اطلاعات کم هست چرا با SQLServer؟ چرا با expess یا SQLite نه؟
تا ایتجایی هم که مرور کردم کد هاتون رو خیلی خوب نوشته بودید. اما بعضی جاها مثل فرم لاگین دکمه یادتون رفته بود درست اسم انتخاب کنید. پسورد رو رمزگذاری می کنید؟(شاید توی این برنامه زیاد اهمیت مهم نباشه اما کلا به درد می خوره)

spring69
یک شنبه 03 مهر 1390, 13:06 عصر
تشکر از توجهتون.
بله sqlexpress 2008 r2 هست. شما با چه نسخه ای تست کردید؟
پسورد رمز گذاری نمیشه و باید اصلاح کنم.

ahrimaneahurai
یک شنبه 03 مهر 1390, 13:07 عصر
من با ۲۰۰۵ تست کردم.
چرا از ef یا لینک استفاده نکردید؟ همش از sp استفاده کردید؟ لینک راحت تر نبود؟

spring69
یک شنبه 03 مهر 1390, 13:19 عصر
چون دانشجویی بود و استاد ازشون خواسته بود که با سه لایه و ado.net نوشته بشه.
به همین چند کوئری لینکی (Linq) که نوشتم هم گیر داده بود:لبخند:

ahrimaneahurai
یک شنبه 03 مهر 1390, 13:21 عصر
اگر میشه دیتابیس رو با ۲۰۰۵ هم بذارید خیلی ممنون میشم.

spring69
یک شنبه 03 مهر 1390, 14:04 عصر
چون بانک ساده هست اسکریپتش رو گذاشتم به این ترتیب ازش استفاده کنید:
1- یک دیتابیس جدید با نام Dabirkhane-DB بسازید.
2- اسکریپت رو اجرا کنید.

ahrimaneahurai
سه شنبه 05 مهر 1390, 13:37 عصر
دوست عزیز یک سوال
چرا از try catch های تو در تو استفاده کردید؟ این کار درست هست؟

try
{
cmd.Transaction = trans;
SqlCommandBuilder.DeriveParameters(cmd);
int c = 0;
foreach (SqlParameter item in cmd.Parameters)
item.Value = paramvals[c++];
try
{
retVal = int.Parse(cmd.ExecuteScalar().ToString());
}
catch (Exception)
{
retVal = -1;
}

trans.Commit();
}
catch (Exception ex)
{
MessageBox.Show("Error - Connection.executeStoredProcedure: " + spName + " \nException: " + ex.StackTrace.ToString());
trans.Rollback();
return -1;
}

کانکشنتون هم من فعلا جایی ندیدم ببندید. مخصوصا این کار رو کردید یا از دستتون در رفته؟

ahrimaneahurai
سه شنبه 05 مهر 1390, 14:06 عصر
چند تا سوال دیگه
وقتی ضمیمه یا تصویر نامه رو میگیرید فقط آدرس اون رو میگیرید. اگر کاربر فایل اصلی رو به دلیل اینکه فکر میکنه توی سیستم شما ثبت شده پاک کنه چی؟ بهتر نیست همون نمونه رو جای دیگه کپی کنید؟

spring69
سه شنبه 05 مهر 1390, 17:41 عصر
سلام و ممنون از توجهتون
بله نکته هایی که گفتید کاملا درسته
کلا کلاس acceslayer نیاز به دوباره نویسی و تصحیح داره.
چون این رو خودم با عجله نوشته بودم و تغییرات مدیریت نشده توش زیاد دادم
سعی میکنم هر موقه وقت کردم هم کلاس دیتا و هم کل پروژه رو مشکلاتش رو برطرف کنم و بزارم.