10 ویژگی Net Core. که باید بدانید
بنابراین OpenID Connect پروتکلی است که در عمل استفاده میشود و توسعه دهنده و جایگزین کنندهی پروتکل OAuth 2.0 میباشد. هرچند ممکن است در بسیاری از منابع صرفا به OAuth 2.0 بپردازند، اما در پشت صحنه با همان OpenID Connect کار میکنند.یعنی کار Authorization رو پروتکل OpenID Connect انجام میده؟ پس OAuth 2.0 چه میشه؟
آموزش JavaScript Front-End Web App
انتشار ویژوال استدیو ۲۰۲۲ نگارش 17.5
For .NET and cloud developers, we’ve focused on improving the inner-loop dev experience. New .http/.rest files make it easier to test and iterate on your APIs directly in Visual Studio, while improved Dev Tunnels help streamline the configuration and management of your webhooks. We’ve also made it easier than ever to deploy your ASP.NET apps to containers.
Game developers can now view properties from base classes modified in an Unreal Blueprint asset without leaving the IDE. Visual Studio has improved the cross-platform development experience with a new remote file explorer, Linux Console output to the Integrated Terminal window, dev container improvements, and more.
Beyond individuals, Visual Studio also has new features to better support dev teams at scale, with exportable configuration files and a persistent update toggle helping ensure everyone on your team is working from the latest version of the tool.
This blog covers several of the top new features in Visual Studio 17.5—to see some in action, watch the Visual Studio 17.5 release video. As always lot of these features come straight from your feedback and suggestions. Your feedback is critical to help us make Visual Studio the best tool it can be!
در این تصویر اطلاعات کاملی از مکانیزم ذخیره سازی دادهها در پلتفرم اندروید مشاهده میکنید.
ما میتوانیم دادههای خود را در یک بانک از نوع SQLite در نظر بگیریم. پایگاهداده به این دلیل، ما را از تصمیم غیرضروری برای اجرای ساختار بی نظم دادهها بینیاز میکند. بیایید به یک مثال از نحوه ذخیره و بازیابی دادهها با استفاده از یکی از این مکانیزمها نگاه کنیم.
Shared Preferences یا اولویتهای اشتراکی
اولویتهای مشترک عمدتا برای ذخیرهسازی تنظیمات برنامهها مفید هستند و تا زمانی که راهاندازی مجدد توسط دستگاه انجام شود، معتبر خواهد بود. بیایید بگوییم که باید اطلاعات مربوط به یک سرور ایمیل را ذخیره کنیم که برنامه ما برای بازیابی دادهها به آن نیاز دارد.
ما باید نام میزبان ایمیل (hostname) , درگاه (port) و کارگزاری که از SSL استفاده میکند را ذخیره کنیم. کلاس زیر این کار را برای ما انجام میدهد به قطعه کد زیر توجه نمایید:
package net.zenconsult.android; import java.util.Hashtable; import android.content.Context; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.preference.PreferenceManager; public class StoreData { public static boolean storeData(Hashtable data, Context ctx) { SharedPreferences prefs = PreferenceManager .getDefaultSharedPreferences(ctx); String hostname = (String) data.get("hostname"); int port = (Integer) data.get("port"); boolean useSSL = (Boolean) data.get("ssl"); Editor ed = prefs.edit(); ed.putString("hostname", hostname); ed.putInt("port", port); ed.putBoolean("ssl", useSSL); return ed.commit(); } }
package net.zenconsult.android; import java.util.Hashtable; import android.content.Context; import android.content.SharedPreferences; import android.preference.PreferenceManager; public class RetrieveData { public static Hashtable get(Context ctx) { String hostname = "hostname"; String port = "port"; String ssl = "ssl"; Hashtable data = new Hashtable(); SharedPreferences prefs = PreferenceManager .getDefaultSharedPreferences(ctx); data.put(hostname, prefs.getString(hostname, null)); data.put(port, prefs.getInt(port, 0)); data.put(ssl, prefs.getBoolean(ssl, true)); return data; } }
package net.zenconsult.android; import java.util.Hashtable; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.util.Log; import android.widget.EditText; public class StorageExample1Activity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Context cntxt = getApplicationContext(); Hashtable data = new Hashtable(); data.put("hostname", "smtp.gmail.com"); data.put("port", 587); data.put("ssl", true); if (StoreData.storeData(data, cntxt)) Log.i("SE", "Successfully wrote data"); else Log.e("SE", "Failed to write data to Shared Prefs"); EditText ed = (EditText) findViewById(R.id.editText1); ed.setText(RetrieveData.get(cntxt).toString()); } }
NET 6 Preview 1. منتشر شد
You can download .NET 6 Preview 1, for Windows, macOS, and Linux.
- Installers and binaries
- Container images
- Linux packages
- Release notes
- Known issues
- GitHub issue tracker
.NET 6 has been tested with Visual Studio 16.9 Preview 4 and Visual Studio for Mac 8.9. We recommend you use those builds if you want to try .NET 6.
سری ویدیوهای NET Conf 2023.
.NET Conf 2023
.NET Conf 2023 is the largest .NET event hosted online! Co-organized by the .NET community and Microsoft and backed by the support of the .NET Foundation and ecosystem partners, it's your ticket to learning and finding inspiration for your upcoming software projects. Dive into the world of web, mobile, cloud, desktop, gaming, IoT, AI, and beyond, all powered by .NET. Whether you're just starting your coding journey or you're a seasoned pro, these sessions are tailored for everyone. Be prepared for presentations covering the exciting new features of .NET 8, C# 12, Azure, Visual Studio, and so much more. Tune in to learn about the fastest release of .NET yet!
نقش Emscripten این وسط خیلی پر رنگ هست، چون نه تنها کد C و... رو کامپایل به Web Assembly میکنه، بلکه در ادامه هم مثلا اگه قراره فایل db مربوط به sqlite جایی ذخیره بشه، برای مثال تعیین میکنه که تو قسمت blob storage موجود در indexed db قرار بگیره، چون فرض مثال مرورگر که نمیتونه فایل db رو ذخیره کنه تو درایو C برای مثال! در واقع کد مربوطه رو سازگار با دنیای Browser کامپایل میکنه