یک سال در شماران ، برداشتی آزاد از کار در محیط شرکت شماران سیستم.

by MDP 12. July 2011 03:53

به طور اتفاقی مطلبی در وبلاگ افشار محبی دیدم که نظرم رو به خودش جلب کرد با این عنوان :” یک سال در پرشیا شبکه “ از این ایده خوشم اومد.به قول خود جناب محبی :

از بقیه همکاران و دوستان نرم‌افزاری دعوت می‌کنم در وبلاگ‌هایشان راجع به شرکت‌هایی که در آنجا کار کرده یا می‌کنند، بدون داشتن حب و بغض، بنویسند. این طوری اولاً راهنمایی برای دیگر همکاران جویای کار تهیه شده و ثانیاً قدر خوبی‌های احتمالی شرکت و تیم‌ها هم دانسته شده است.

 

 

به روز رسانی


به درخواست شماران این مطلب حذف شد

Tags:

Work

پیکر بندی Entity Framework با کانکشن دستی

by MDP 11. July 2011 01:10

حتمی شما توی پروژه هاتون دوست داشتید که Connection String در EF داخل فایل Web.Config یا App.Config قرار ندید که امنیت نرم افزارتون بالا بره.

ایده های زیادی در رفع مشکل فوق وجود داره ، از جمله :

    1. Encrypt کردن Web.Config (+ یک نسخه وطنی)
    2. ذخیره کردن Connection String در یک دیتابیس دیگر
    3. ذخیره کردن Connection String در یک فایل متنی مخفی
    4. Embed کردن Connection String در فایل های Resource
    5. ذخیره کردن Connection String به صورت HardCode ( البته این اصطلاح Hard Code غلطه )

شما هر کدون از این روش ها رو که استفاده کنید بازم لازم دارید که به EF بفهمونید که Connection String کدومه.Code Generator بعد از Map کردن Entity ها ، سه مدل Constructor برای مدل شما می سازه:

  1. Constructor عادی و بدون پارامتر
  2. Constructor با پارامتر ConnectionString که یک String از شما دریافت میکنه.
  3. Constructor با پارامتر Connection که از نوع “EntityConnection” هست.

مورد اول که از اطلاعات Base که توسط Code Generator ساخته میشه استفاده میکنه.مورد دوم و سوم جای بحث دارن.

برای ادامه بحث باید ابتدا ساز و کار EF رو مورد بررسی قرار بدیم.EF برای Mapping از سه فایل CSDL ، SSDL و MSL استفاده میکنه.

این سه فایل اطلاعات اصلی برای برقراری ارتباط بین EF و DataBase رو بر عهده دارن که شمال اطلاعات Entity ها ، روابط و ... میشن.

EF برای پیکر بندی به این اطلاعات نیاز داره.به خاطر همین باید توی Connetion Strnig این اطلاعات وجود داشته باشه.یعنی آدرس این سه فایل داده بشه.ولی این سه فایل هنگام Build شدن به داخل یک فایل مرکزی با پسوند EDMX ترکیب میشن.راه حل آدرس دهی سادست.شما باید از کلاس “System.Data.EntityClient.EntityConnectionStringBuilder” برای ساختن Connection استفاده کنید.

روش پیاده سازی :

string connectionString = new System.Data.EntityClient.EntityConnectionStringBuilder()
{
	Metadata = "res://*",
	Provider = "System.Data.SqlClient" /* if the provider is MS SQL */,
	ProviderConnectionString= "Reqular database connection string"
}.ConnectionString;

شاید از خودتون در مورد خط سوم یعنی آدرس دهی Metadata سوال کنید.این بخش آدرس همون سه فایل مذکور هست که باید داده می شد که به این شیوه از Resource ها خونده میشه و البته به صورت خودکار اون سه فایل رو خودش استخراج میکنه.شما فقط کافیه که این آین Connection رو که به صورت String هست به Constructor های EF بدید و تمام !

Tags: ,

.Net | EF

روش انتخاب یک شرکت ، قسمت دوم : عوامل ثانویه

by MDP 10. July 2011 00:36

تو بخش اول عوامل موثر در انتخاب یک شرکت مناسب رو به دو بخش :

    1. موارد اولیه :

      1. حدود شرکت

      2. حدود شخص

    2. موارد ثانویه :

      1. محیط کاری

      2. موارد مالی

      3. همکاران

      4. برنامه

تقسیم کردم.در این پست می خوام به بخش دوم یعنی عوامل ثانیوه بپردازم:

موارد ثانیوه شامل مواردی میشه که با موندگاری و کارایی شما در شرکت مورد نظر ارتباط مستقیمی داره :

محیط کاری:

شاید تا بحال این مورد رو خودتون تجربه کرده باشید ، بعضی شرکت ها هستند که برای کارمنداشون ارزشی قائل نیستندو به کوچکترین نیاز یک فرد برای کار که یک محیط مناسب برای کار هست بی اهمیت هستند.این مورد شاید در اوایل کار شما در اون شرکت زیاد براتون سخت نباشه ، ولی فرض کنید که شما در شرکتی کار میکنید که اتاق شما 16 متر بیشتر نیست ولی در عوض 10 نفر آدم به وضع بسیار اسف باری کنار همدیگه مشغول به کار هستند.محیط شلوغ ، گرم و یا سرد ، نور نامناسب ، KeyBoard و Mouse نا مناسب و صندلی بد … ! این موارد در ابتدای شروع به فعالیت شما زیاد چشمگیر نیستند ولی با گذشت زمان تائثیر تک تک این موارد رو خواهید دید.پس همیشه سعی کنید این موارد رو کاملا چک کنید.سلامتی روحی و جسمی شما از همه چیز با ارزش تره !

 

موارد مالی:

این مورد که نیاز به توضیح زیادی نداره.مخصوصا برای کسانی که برنامه های منظم و دقیقی برای موارد مالیشون دارن.اگر براتون مهمه که حتمی سر وقت حقوق دریافت کنید ، قبل از امضا قرارداد با چند نفر از کارمندای شرکت ( غیر از مدیران البته ! ) صحبت بکنید.چون معمولا این جمله توی محاسبه ها زیاد شنیده میشه :

ما مشکلی توی پرداخت های مالی نداریم و ماکسیموم تا 5 هر ماه حقوق ها داده میشه

که هم شما و هم من می دونیم که نمیشه زیاد بهش اعتماد کرد !

 

همکاران:

موضوع هم سطحی و بارعلمی یکسان تغریبا منتفیه ! شما خیلی کم بتونید تعدادی انسان پیدا کنید که در سطح های مشترکی باشن.به همین دلیل شما باید این مورد رو بپذیرید که یا شما زبان همکارتون رو نمی فهمید و یا اون.ولی همیشه مراقب این موضوع باشید که یکی از دلایل اصلی هر فردی برای تغییر محل کار ارتقاء شغلی هست ، نه معلم شدن برای افراد دیگه ! همیشه سعی کنید از مدیر پروژه ( البته درست تر هست که مدیر فنی گفته بشه ) در مورد بقیه همکاران سوال کنید و جایگاه کاری خودتون رو بپرسید.

 

برنامه:

یکی از عوامل بسیار مهم در شرایط ثانیوه برنامه شرکت هست.هیچوقت با شرکتی که برنامه ای برای پیشرفت نداره قرارداد نبندید ، وقتی که شرکت برنامه نداشته باشه مشکلات زیادی از جمله :

  1. از بین رفتن مشتریان
  2. فشار به کارمندان
  3. درخواست های غیر واقعی

به شرکت وارد میشه که در آخر باعث منحل شدن و یا ورشکستگی اون میشه .شما هیچ وقت نباید جایی برید که از لحاظ برنامه ریزی کاری مشکل داشته باشن.البته این مورد هم شاید آرمانی باشه ولی میشه حداقل بررسیش کرد.

 

حرف آخر :

همیشه یادتون باشه که همیشه شرکت ها نیستند که شما رو انتخاب میکنن ، مرحله اول شمائید که اون ها رو انتخاب می کنید.

یادتون باشه که از پرس و جو واهمه ای نداشته باشید.

با دقت بررسی کنید ، برای پرس و جو سراغ منشی مدیرعامل(!) نرید ، از کارمندان عادی سوال کنید.

حقوق خودتون رو بشناسید ، سعی کنید متن قرارداد رو با دقت بخونید .

 

با آرزوی موفقیت برای همه شما Winking smile

Tags: , ,

Work

مشکل Live Writer با BlogEngine

by MDP 9. July 2011 04:57

اگه شما هم مثل من عاشق پک Live باشید حتمی از Live Writer استفاده کردید.

برای کسایی که نمی دونن کارایی Live Writer چیه باید بگم که یک Editor قوی هست که بر اساس پروتوکل استانداردی به نام : WLW که مخفف Windows Live Writer هست.Live Writer بعد از گرفتن نام کاربری و رمز عبور شما به صورت بسیار جالب و جذابی Themplate وبلاگ شما رو هم دانلود میکنه تا شما هنگام بلاگ نوشتن حس کنید که توی خود سایت درحال نوشتن هستید.

در باره خصوصیات Live Writer بعدا توضیحات کاملی میدم و فعلا به توضیح مشکل و روش رفع اون می پردازم.

اگر شما از BlogEngine برای Bloging استفاده میکنید به راحتی می تونید با Live Writer بلاگ نویسی کنید.

همه چیز خیلی روون و ساده هست ولی وقتی شما نوشتون رو Publish می کنید نمی تونید اونو توی صفحه اصلی وبلاگتون ببیندید.البته اگر Login شده باشید مشکلی وجود نداره و پست رو می بینید.

مشکل کجاست ؟ سادست ، همه چیز به درستی در دیتابیس قرار میگیره به غیر از تاریخ !بله درسته ، مشکل سر تاریخ پست هست.بیشتر سرور هایی که ما از اونا استفاده می کنیم برای Hosting از Time Zone متفاوت با ما استفاده می کنن به همین خاطر معمولا تاریخ پست یک روز جلو تر از تاریخ سرور ثبت میشه و BE هم تا روزی که با اون تاریخ یکی نباشه پست شما رو نشون نمیده.

پس تا زمانی که این مشکل حل نشده سعی کنید تاریخ رو دستی بدید.

موفق باشید.

Tags: , , ,

BlogEngine | Live Writer

افزونه IDevcenter برای BlogEngine

by MDP 9. July 2011 04:24

داشتم سعی می کردم که دکمه IDevcenter رو توی پست هام قرار بدم ولی حوصله وصل شدن به بخش Theme و گشتن توی PostView.ascx  رو نداشتم،چ.ن اگه این کار رو بکنم مجبورم که با هر بار تعویض Theme این تغییرات رو اعمال کنم.تصمیم گرفتم در رفع این معضل بزرگ ( همون تنبلی ) افزونه این کار رو نویسم که هم خو��م استفاده کنم هم بقیه افرادی که از BlogEngine استفاده می کنن.

نوشتن افزونه برای BE خیلی جالبه.به زودی مطلبی برای این مورد می نویسم Nerd smile

برای دانلود این افزونه با این آدرس مراجعه کنید

برای نصب هم کافیه که بعد از UnZip کردن فولدر IDevcenter.zip فایل IDevcenter.cs رو توی آدرس زیر کپی کنید :

~/App_Code/Extensions/

لطفا اگر از این افزونه استفاده کردید و مشکلی داشت از طریق همین پست مشکل رو گزارش کنید تا درستش کنم.

پ.ن : وقتی افزونه جدیدی رو به BE اضافه میکنید ، معمولا توی Load اول کمی طول می کشه که نگرانش نباشید.

Tags: , ,

.Net | BlogEngine

My Groups

Poll

از چه پلتفرمی برای توسعه استفاده می کنید



Show Results

Month List