WebGL is an in-browser 3D renderer based on OpenGL, which lets you display your 3D content directly into an HTML5 page. Throughout this series I will cover all the essentials you need to get started using this framework. We'll start with an introduction, then we'll be building on to the framework that we used in part one as well as adding a model importer and a custom class for 3D objects. You will also be introduced to animation and controls. Lastly, we’ll take a look at lighting and adding 2D objects to your scene.
- تنها caller از پایان یافتن عملیات غیرهمزمان مطلع خواهد شد.
- هندل کردن خطا و همچنین مدیریت چندین عملیات asynchronous به صورت همزمان خیلی سخت خواهد بود.
- پردازش نتایج فراخوانیهای async
- اجرای دیگر عملیات براساس پاسخ
function getCompanyFromOrderId(orderId) { getOrder(orderId, function(order) { getUser(order.userId, function(user) { getCompany(user.companyId, function(company) { // do something with company }); }); }); }
function getCompanyFromOrderId(orderId) { try { getOrder(orderId, function (order) { try { getUser(order.userId, function (user) { try { getCompany(user.companyId, function (company) { try { // do something with company } catch (ex) { // handle exception } }); } catch (ex) { // handle exception } }); } catch (ex) { // handle exception } }); } catch (ex) { // handle exception } }
- Control
- Promise
- pending: یعنی وضعیت اولیه، هنوز به پایان نرسیده است.
- fulfilled: یعنی عملیات با موفقیت پایان پذیرفته است.
- rejected: یعنی عملیات با شکست مواجه شده است.
function getCompanyFromOrderId(orderId) { getOrder(orderId).then(function(order) { return getUser(order.orderId); }).then(function(user) { return getCompany(user.companyId); }).then(function(company) { // do something with company }).then(undefined, function(error) { // handle error }) }
var promise = new Promise(function(resolve, reject) { // انجام یکسری عملیات به عنوان مثال دریافت اطلاعات از سرور و... if (/* اگر کدهای فوق با موفقیت انجام شدند */) { resolve("عملیات با موفقیت انجام پذیرفت"); } else { reject(Error("خطایی رخ داده است")); } });
promise.then(function(result) { console.log(result); // "عملیات با موفقیت انجام پذیرفت " }, function(err) { console.log(err); // Error: "خطایی رخ داده است" });
function get(url){ return new Promise(function(resolve, reject) { $.get(url, function(data) { resolve(data); }) .fail(function(){ reject(); }); }); }
get('users.all').then(function(users){ myController.users = users; }, function(){ delete myController.users; });
get('users.all').then(function(users){ myController.users = users; }) .catch(function(){ delete myController.users; });
var usersPromise = get('users.all'); var postsPromise = get('posts.everyone'); Promise.all([usersPromise, postsPromise]) .then(function(result){ myController.users = result[0]; myController.posts = result[1]; }, function(){ delete myController.users; delete myController.posts; });
get('users.all').then(function(usersString){ return JSON.parse(usersString); }).then(function(users){ myController.users = users; });
get('users.all').then(JSON.parse).then(function(users){ myController.users = users; });
معرفی Nerd Fonts
For decades, passwords have been the common backbone (headache) of authentication and are well known to lack in security while being frustrating and difficult to use. As we continue to see daily data breaches, the reality of moving away from weak static credentials and killing the password is upon us. Join this session to learn how FIDO2 and WebAuthn open authentication standards, in conjunction with YubiKeys, are solving the elimination of passwords at scale. Hear how organizations like Microsoft have implemented these standards for a true passwordless experience and find out how your organization can follow suit. You'll gain a greater understanding of how to achieve a modern and flexible security architecture through the use of FIDO open standards and hardware authenticators.
6.Visual Studio 2017 15.7 منتشر شد
This release contains the following improvements and enhancements:
- This release now installs Java™ Development Kit 8, Update 181 (JDK version 8u181).
These are the customer-reported issues addressed in 15.7.6:
- Visual C++ Redistributable 2017 does not report the install state in a specific registry location.
- In 15.7 users may see extensions load without all of their assets and cause VS to crash. This has been addressed for 15.7.6.
- Visual Studio 2017 version 15.7.5 crashes when opening a solution.
دریافت خلاصهی وبلاگ تا 12 مهرماه 1389
man khastam download konam ba yek hamchin errori movajeh shodam
fekr konam ke file az rapidshare delete shode?!!
File not available
The following file is not available:
http://rapidshare.com/files/423024356/blog03.10.2010.zip7452 KB
The file of the above link no longer exists. This could be for several reasons:
The uploader deleted the file
The file contained illegal contents and was deleted from our Abuse team
The file is incorrect
The file was uploaded through a free Account and reached the maximum number of downloads
RapidPro expired.
هر چند مدتی است که اس کیوال سرور 2008 ارائه شده یا سرویس پک 3 اس کیوال سرور 2005 اخیرا منتشر گردیده، اما هنوز هم هاستهای ما زحمت ارتقاء را به خود ندادهاند. (چرا باید پول خرج کنند؟!)
اس کیوال سروری را که الان برای برنامه نویسی از آن استفاده میکنم 2008 است و چند روز قبل قصد داشتم به اس کیوال سرور 2000 هاست محترم از طریق management studio 2008 متصل شوم تا تغییرات جدید را به دیتابیس سایت اعمال کنم.
اولین تلاش برای اتصال با خطای زیر متوقف شد!
------------------------------
Failed to retrieve data for this request. (Microsoft.SqlServer.Management.Sdk.Sfc)
------------------------------
ADDITIONAL INFORMATION:
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Server user 'hostXYZ' is not a valid user in database 'hostZXY'. (Microsoft SQL Server, Error: 916)
------------------------------
فقط هم management studio 2008 این مشکل را دارد. با 2005 تست کردم مشکلی نبود.
پس از مدتی جستجو، نتیجه کار به صورت زیر است:
به منوی View گزینه Object Explorer Details مراجعه کنید (در management studio اس کیوال سرور 2008). روی هدر صفحهای که ظاهر میشود کلیک راست کرده و تیک collation را بردارید (شکل زیر). ممکن است collation دیتابیس آفلاین، نال گزارش شود و این مورد مشکل درست میکند. تیک collation را که بردارید این مورد بررسی نشده و لیست دیتابیسها نمایش داده میشود.
Impersonation Process
Impersonation is when an admin user is logged in with the same privileges as a user, but without knowing their password or other credentials. I’ve used this in couple applications and it was invaluable for support cases and debugging user permissions.
[Authorize(Roles = "Admin")] // <-- Make sure only admins can access this public async Task<IActionResult> ImpersonateUser(String userId) { var currentUserId = User.GetUserId(); var impersonatedUser = await _userManager.FindByIdAsync(userId); var userPrincipal = await _signInManager.CreateUserPrincipalAsync(impersonatedUser); userPrincipal.Identities.First().AddClaim(new Claim("OriginalUserId", currentUserId)); userPrincipal.Identities.First().AddClaim(new Claim("IsImpersonating", "true")); // sign out the current user await _signInManager.SignOutAsync(); await HttpContext.Authentication.SignInAsync(cookieOptions.ApplicationCookieAuthenticationScheme, userPrincipal); return RedirectToAction("Index", "Home"); }