- راه اندازی یک وب سرور
- بارگذاری مجدد مرورگر به صورت خودکار بعد از ذخیرهی هر فایل
- تبدیل پیش پردازندههای CSS مانند LESS, SASS به CSS
- بهینه سازی فایلهای asset شامل CSS,JS و همچنین عکسها
چرا گالپ ؟
نصب گالپ
sudo npm install -g gulp
gulp -v
sudo npm install -g gulp
gulp -v
SASS مخفف Syntactically Awesome Style Sheets است که توسط آقای Hampton Catlin طراحی و ایجاد شده است و همانند CoffeeScript که پس از کامپایل به جاوااسکریپت تبدیل میشد، SASS نیز پس از کامپایل به CSS تبدیل میشود. SASS با استفاده از متغیرها، mixins، ارث بری و قوانین تودرتو، CSS را با مهارت زیادی در بهترین حالت تولید میکند.
SASS باعث کمتر نوشتن کد CSS، سبب افزایش خوانایی و دستکاری کردن راحتتر و پویای آن میشود. این مساله راهی عالی برای نوشتن کدهای CSS کاربردیتر است و میتواند سرعت گردش کار هر توسعه دهنده و یا طراح وب را افزایش دهد.
وقتی اولین بار SASS عرضه شد، syntax آن تفاوت قابل توجهی با CSS داشت (پسوند فایلهای آن SASS. است) که به جای نوشتن براکتها، از تورفتگی استفاده میشد و دیگر نیازی به نوشتن ";" نبود. البته با عدم استقبال از این syntax مواجه شد و با عرضهی نسخه 3 SASS، (که پسوند فایلهای آن SCSS. است) syntax آن بسیار شبیه به CSS شد؛ البته با همهی ویژگیهای SASS.
برای مثال کد CSS زیر را میخواهیم به دو روش بنویسیم:
header { margin: 0; padding: 0; color: #fff; }
$color: #fff; header { margin: 0; padding:0; color: $color; }
$color: #fff header margin: 0 padding: 0 color: $color
sass myfile.scss myfile.css
npm install node-sass
در صورتیکه فایلهای شما برای انشار نهایی آماده هستند، پروژه خود را در لیست سمت چپ برنامه انتخاب کنید تا در بالا و سمت راست برنامه، گزینهی Publish Repository دیده شود و با انتخاب آن، یک نام را که قبلا وارد کرده اید و یک توضیح مختصر را از شما میخواهد. به صورت پیش فرض انتشارها عمومی و رایگان هستند. در صورتی که اگر بخواهید این انتشار را تنها برای خود و به صورت احتصاصی انجام دهید، باید هزینه آن را پرداخت کنید.
در صورتیکه دوست دارید در پروژهای مشارکت داشته باشید، ابتدا پروژه مورد نظر را در سایت گیت هاب Fork کنید و سپس از طریق گزینهی Add در برنامه عمل کنید و اینبار در سربرگهای بالا، به جای Create گزینهی Clone را انتخاب نمایید. در این حالت لیستی از پروژههای Fork شده نمایش داده میشوند و با انتخاب هر کدام، پروژه بر روی سیستم شما کپی خواهد شد.
بعد از انتخاب گزینهی Clone، از شما محل ذخیرهی پروژه را خواهد پرسید و بعد از تایید آن، مقدار زمان کمی برای کپی کردن پروژه خواهد خواست. پس از آن لیستی از همهی تغییرات و مشارکتها به شما نمایش داده میشود و در صورتیکه دوست دارید به تغییری در قبل برگردید تا کارتان را از آن شروع کنید، میتوانید از گزینهی Revert استفاده کنید. برای یادگیری سایر اصطلاحات فنی گیت و گیتهاب میتوانید از مسیرهای آموزشی آن استفاده کنید.
حال با خیال راحت روی پروژه کار کنید و تغییرات را روی آن اعمال کنید و بعد از اینکه کارتان تمام شد، دوباره به برنامه باز گردید و پروژه را در لیست انتخاب کرده و در سمت راست بالای صفحه، گزینهی Sync Now را انتخاب کنید تا مشارکت جدید شما به سیستم گیت هاب اعمال شود و حالا اگر به صفحهی پروژه در سایت گیت هاب بروید، میبینید که شما به عنوان یک مشارکت کنندهی جدید اضافه شدهاید. پس با هر بار تغییر نسخهی پروژه میتوانید آن را با سیستم گیت سینک نمایید.
گزینهی تنظیمات که در کنار عبارت Sync Now قرار دارد و با رنگ آبی در شکل مشخص شده است نیز به شما اجازهی تغییر فایلهای تنظیماتی از قبیل gitignore یا gitattribute را میدهد.
در صورتی که برای پروژهای در گیت هاب شاخهها یا branches تعریف شده باشند، در اینجا هم میتوانید شاخهی مورد نظر را انتخاب کنید:
public class Personel { [Key] public int PersonelID { get; set; } [MaxLength(15)] public string Name { get; set; } [MaxLength(25)] public string Family { get; set; } [MaxLength(10)] public string CodeMelli { get; set; } }
public class PersonalContext : DbContext { public DbSet<Personel> Personel { get; set; } public override int SaveChanges() { return base.SaveChanges(); } }
Install-Package EntityFramework.BulkInsert-ef6
public ActionResult Insert() { int Counter = 1000; List<Personel> Lst = new List<Personel>(); // شبیه سازی خواندن رکوردها از فایل اکسل for (int i = 0; i < Counter; i++) { Lst.Add(new Personel { CodeMelli = "0000000000", Family = "Karimi", Name = "Mohammad" }); } PersonalContext db = new PersonalContext(); db.BulkInsert(Lst); db.SaveChanges(); return View(); }
Console.WriteLine("Hello Word");
WorkflowInvoker.Invoke( new Workflow1()); Console.WriteLine("Press ENTER to exit"); Console.ReadLine();
نقطه آغازین بحث بعد RavenDB خواهد بود که Bryan Wheeler (مدیر توسعه بسترهای نرم افزاری در msn) در باره آن گفته :
RavenDB
just rocked my world. It’s extremely approachable, even for
non-database guys – it took me less than 30 minutes to get up and
running
تصویر بالا نشان دهنده ساختار Single Page Application است.
string connString = "...";
SqlConnection conn = new SqlConnection(connString);
string cmdString = "select * from author where name=N'test'";
SqlCommand cmd = new SqlCommand(cmdString, conn);
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
...
}
conn.Close();
Exception Details: System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
using (SqlConnection connection =
new SqlConnection(connectionString))
{
...
UserName: Admin Password: 1234567@ ---------- UserName: Saber_Fatholahi Password: 1234567@