import { HttpModule } from '@angular/http'; @NgModule({ imports: [ HttpModule ]
ویژگی ها
- امکان ایجاد progress bar و همچنین قابلیت لغو آپلود.
- Drag & Drop
- امکان paste کردن از Clipboard و قابلیت drag & drop از browser
- امکان resize کردن تصویر قبل از آپلود شدن
- امکان تغییر دادن orientation تصویر پیش از ارسال
- قابلیت resume و pause/play در آپلود
- امکان فیلتر کردن type، size و طول و عرض تصاویر
- قابلیت تبدیل به Flash shim در صورت عدم پشتیبانی html5 توسط مرورگر
نصب و پیاده سازی
bower install ng-file-upload-shim --save bower install ng-file-upload --save
<input type="file" ngf-select ng-model="picFile" name="file" accept="image/*" ngf-max-size="2MB" required>
<div ngf-drop ng-model="picFile" ngf-pattern="image/*"> ... </div>
<i ng-show="myForm.file.$error.required">*required</i><br> <i ng-show="myForm.file.$error.maxSize"> File too large: max is 2M </i>
app.controller('MyCtrl', ['$scope', 'Upload', '$timeout', function ($scope, Upload, $timeout) { // the method uploadPic called from Angular View $scope.uploadPic = function(file) { file.upload = Upload.upload({ url: 'https://angular-file-upload-cors-srv.appspot.com/upload', data: {file: file, otherData: $scope.otherData}, }); file.upload.then(function (response) { // waiting for response $timeout(function () { file.result = response.data; }); }, function (response) { //error if (response.status > 0) $scope.errorMsg = response.status + ': ' + response.data; }, function (evt) { //progress file.progress = Math.min(100, parseInt(100.0 * evt.loaded / evt.total)); console.log(file.progress); }); } }]);
قالب ادمین مبتنی بر angular material
بررسی زبان Go برای توسعه دهندگان #C
A Tour of Go (golang) for the C# Developer
Learning other programming languages enhances our work in our primary language. From the perspective of a C# developer, the Go language (golang) has many interesting ideas. Go is opinionated on some things (such as where curly braces go and what items are capitalized). Declaring an unused variable causes a compile failure; the use of "blank identifiers" (or "discards" in C#) are common. Concurrency is baked right in to the language through goroutines and channels. Programming by exception is discouraged; it's actually called a "panic" in Go. Instead, errors are treated as states to be handled like any other data state. We'll explore these features (and others) by building an application that uses concurrent operations to get data from a service. These ideas make us think about the way we program and how we can improve our day-to-day work (in C# or elsewhere).
0:00 Welcome to Go
2:40 Step 1: Basics
12:20 Step 2: Calling a web service
23:35 Step 3: Parsing JSON
36:26 Step 4: "for" loops
41:00 Step 5: Interfaces and methods
50:05 Step 6: Time and Args
55:10 Step 7: Concurrency
1:07:10 Step 8: Errors
1:14:40 Step 9: Concurrency and errors
1:24:35 Where to go next
ویژگی Batching در EF Core
این کدها برای حالت انجام 2 به روز رسانی و 6 ثبت، کدهای SQL زیر را تولید میکنند:
UPDATE [dbo].[Blogs] SET [Url] = @0 WHERE ([BlogId] = @1) -- @0: 'http://sample.com/blogs/dogs' (Type = String, Size = -1) -- @1: '1' (Type = Int32) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 19 ms with result: 1 UPDATE [dbo].[Blogs] SET [Url] = @0 WHERE ([BlogId] = @1) -- @0: 'http://sample.com/blogs/cats' (Type = String, Size = -1) -- @1: '2' (Type = Int32) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 47 ms with result: 1 INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Horse Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/horses' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 31 ms with result: SqlDataReader INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Snake Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/snakes' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 73 ms with result: SqlDataReader INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Fish Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/fish' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 49 ms with result: SqlDataReader INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Koala Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/koalas' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 49 ms with result: SqlDataReader INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Parrot Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/parrots' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:41 ب.ظ +04:30 -- Completed in 26 ms with result: SqlDataReader INSERT [dbo].[Blogs]([Name], [Url]) VALUES (@0, @1) SELECT [BlogId] FROM [dbo].[Blogs] WHERE @@ROWCOUNT > 0 AND [BlogId] = scope_identity() -- @0: 'The Kangaroo Blog' (Type = String, Size = -1) -- @1: 'http://sample.com/blogs/kangaroos' (Type = String, Size = -1) -- Executing at 16/06/1396 02:31:42 ب.ظ +04:30 -- Completed in 38 ms with result: SqlDataReader
جمع کل مدت زمان عملیات در اینجا 332 میلی ثانیه است در مقایسه با 44 میلی ثانیه EF Core. یعنی EF 6.x در حالت insert/update/delete چیزی حدود 86 درصد از نمونهی EF Core کندتر است و این مورد اهمیت batching و کاهش تعداد رفت و برگشتهای به بانک اطلاعاتی است که به صورت پیش فرض در EF Core فعال است.
یکپارچه کردن ELMAH با WCF RIA Services
ب - بهترین مرجع برای ELMAH ، فایل web.config پوشه samples آن است. در این مورد تنظیمات لازم وجود دارد (در مورد بستن دسترسی ریموت یا استفاده از authorization).
خلاصه این دو مورد رو یکی از اعضای اصلی تیم ASP.NET در عمل نشان داده:
http://haacked.com/archive/2007/07/24/securely-implement-elmah-for-plug-and-play-error-logging.aspx
+
http://code.google.com/p/elmah/wiki/SecuringErrorLogPages
Raspberry Pi Zero یک کامپیوتر 5 دلاری
اینترنت اشیاء در حال محقق شدنه کم کم ..