{"id":104,"date":"2026-06-07T20:29:45","date_gmt":"2026-06-07T16:59:45","guid":{"rendered":"https:\/\/danialchoopan.ir\/?post_type=portfolio&#038;p=104"},"modified":"2026-06-07T20:29:45","modified_gmt":"2026-06-07T16:59:45","slug":"%d8%b3%d8%a7%d9%85%d8%a7%d9%86%d9%87-%d8%ac%d8%a7%d9%85%d8%b9-danialnetfood","status":"publish","type":"portfolio","link":"https:\/\/danialchoopan.ir\/?portfolio=%d8%b3%d8%a7%d9%85%d8%a7%d9%86%d9%87-%d8%ac%d8%a7%d9%85%d8%b9-danialnetfood","title":{"rendered":"\u0633\u0627\u0645\u0627\u0646\u0647 \u062c\u0627\u0645\u0639 DanialNetFood"},"content":{"rendered":"\n<p>\u0627\u0645\u0627\u0646\u0647 DanialNetFood \u06cc\u06a9 \u067e\u0644\u062a\u0641\u0631\u0645 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u0633\u0641\u0627\u0631\u0634 \u063a\u0630\u0627 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u200c\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u062f\u0627\u062a\u200c\u0646\u062a \u0648 \u0628\u0627 \u062a\u0645\u0631\u06a9\u0632 \u0628\u0631 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627\u0644\u0627 \u0648 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0648\u0645\u06cc \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a. \u0627\u06cc\u0646 \u067e\u0631\u0648\u0698\u0647 \u0646\u0645\u0627\u06cc\u0634\u06cc \u0627\u0632 \u062a\u0633\u0644\u0637 \u0628\u0631 \u0686\u0631\u062e\u0647 \u0632\u0646\u062f\u06af\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627 \u062f\u0631 ASP.NET Core MVC\u060c \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0634\u0633\u062a\u200c\u0647\u0627\u06cc \u0627\u06cc\u0645\u0646\u060c \u0648 \u062a\u0639\u0627\u0645\u0644\u0627\u062a \u0622\u0646\u06cc \u0628\u0627 SignalR \u0627\u0633\u062a.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u06a9\u0644\u06cc\u062f\u06cc<a href=\"https:\/\/github.com\/danialchoopan\/DanialNetFood#%D9%88%DB%8C%DA%98%DA%AF%DB%8C%E2%80%8C%D9%87%D8%A7%DB%8C-%DA%A9%D9%84%DB%8C%D8%AF%DB%8C\"><\/a><\/h2>\n\n\n\n<p><strong>\u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc \u0633\u0627\u0632\u0645\u0627\u0646\u06cc:<\/strong>\u00a0\u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u06cc\u0641 \u067e\u0648\u0644 \u06a9\u0627\u0631\u0628\u0631\u060c \u0633\u06cc\u0633\u062a\u0645 \u0628\u0631\u0631\u0633\u06cc \u0645\u062d\u062f\u0648\u062f\u0647 \u062c\u063a\u0631\u0627\u0641\u06cc\u0627\u06cc\u06cc (Geofencing) \u0648 \u0633\u0648\u0626\u06cc\u0686 \u062a\u0648\u0642\u0641 \u0627\u0636\u0637\u0631\u0627\u0631\u06cc (Kill Switch).<a href=\"https:\/\/github.com\/danialchoopan\/DanialNetFood#%D8%B3%D8%A7%D9%85%D8%A7%D9%86%D9%87-%D8%AC%D8%A7%D9%85%D8%B9-danialnetfood\"><\/a><\/p>\n\n\n\n<p><strong>\u0645\u062f\u06cc\u0631\u06cc\u062a \u0633\u0628\u062f \u062e\u0631\u06cc\u062f \u0647\u0648\u0634\u0645\u0646\u062f:<\/strong>\u00a0\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 AJAX \u0648 Session \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0633\u0628\u062f \u062e\u0631\u06cc\u062f \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0631\u0641\u0631\u0634 \u0635\u0641\u062d\u0647.<\/p>\n\n\n\n<p><strong>\u0645\u0639\u0645\u0627\u0631\u06cc \u0686\u0646\u062f \u0644\u0627\u06cc\u0647\u200c\u0627\u06cc:<\/strong>\u00a0\u062c\u062f\u0627\u0633\u0627\u0632\u06cc \u06a9\u0627\u0645\u0644 \u0628\u062e\u0634\u200c\u0647\u0627\u06cc \u0639\u0645\u0648\u0645\u06cc\u060c \u067e\u0646\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0631\u0633\u062a\u0648\u0631\u0627\u0646\u060c \u067e\u0646\u0644 \u0633\u0641\u06cc\u0631\u0627\u0646 (\u067e\u06cc\u06a9) \u0648 \u067e\u0646\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a \u06a9\u0644 (Super Admin).<\/p>\n\n\n\n<p><strong>\u0631\u062f\u06cc\u0627\u0628\u06cc \u0622\u0646\u06cc \u0633\u0641\u0627\u0631\u0634\u0627\u062a:<\/strong>\u00a0\u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc SignalR \u0628\u0631\u0627\u06cc \u0627\u0637\u0644\u0627\u0639\u200c\u0631\u0633\u0627\u0646\u06cc \u0644\u062d\u0638\u0647\u200c\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a \u0633\u0641\u0627\u0631\u0634 \u0628\u0647 \u0645\u0634\u062a\u0631\u06cc \u0648 \u0631\u0633\u062a\u0648\u0631\u0627\u0646.<\/p>\n\n\n\n<p><strong>\u0633\u06cc\u0633\u062a\u0645 \u062a\u062e\u0641\u06cc\u0641 \u062f\u0627\u06cc\u0646\u0627\u0645\u06cc\u06a9:<\/strong>\u00a0\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Strategy Pattern \u0628\u0631\u0627\u06cc \u0627\u0639\u0645\u0627\u0644 \u0627\u0646\u0648\u0627\u0639 \u062a\u062e\u0641\u06cc\u0641\u200c\u0647\u0627\u06cc \u062f\u0631\u0635\u062f\u06cc \u0648 \u0645\u0628\u0644\u063a \u062b\u0627\u0628\u062a.<\/p>\n\n\n\n<p><strong>\u0627\u0645\u0646\u06cc\u062a \u067e\u06cc\u0634\u0631\u0641\u062a\u0647:<\/strong>\u00a0\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Cookie Authentication \u0648 \u0647\u0634\u200c\u06af\u0630\u0627\u0631\u06cc \u06af\u0630\u0631\u0648\u0627\u0698\u0647\u200c\u0647\u0627 \u0628\u0627 \u0627\u0644\u06af\u0648\u0631\u06cc\u062a\u0645 BCrypt.<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/danialchoopan\/DanialNetFood\">https:\/\/github.com\/danialchoopan\/DanialNetFood<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-22-1024x576.png\" alt=\"\" class=\"wp-image-105\" srcset=\"https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-22-1024x576.png 1024w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-22-300x169.png 300w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-22-768x432.png 768w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-22.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-23-1024x640.png\" alt=\"\" class=\"wp-image-106\" srcset=\"https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-23-1024x640.png 1024w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-23-300x188.png 300w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-23-768x480.png 768w, https:\/\/danialchoopan.ir\/wp-content\/uploads\/2026\/06\/image-23.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u0627\u0645\u0627\u0646\u0647 DanialNetFood \u06cc\u06a9 \u067e\u0644\u062a\u0641\u0631\u0645 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u0633\u0641\u0627\u0631\u0634 \u063a\u0630\u0627 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u200c\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u062f\u0627\u062a\u200c\u0646\u062a \u0648 \u0628\u0627 \u062a\u0645\u0631\u06a9\u0632 \u0628\u0631 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627\u0644\u0627 \u0648 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u0648\u0645\u06cc \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a. \u0627\u06cc\u0646 \u067e\u0631\u0648\u0698\u0647 \u0646\u0645\u0627\u06cc\u0634\u06cc \u0627\u0632 \u062a\u0633\u0644\u0637 \u0628\u0631 \u0686\u0631\u062e\u0647 \u0632\u0646\u062f\u06af\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627 \u062f\u0631 ASP.NET Core MVC\u060c \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0634\u0633\u062a\u200c\u0647\u0627\u06cc \u0627\u06cc\u0645\u0646\u060c \u0648 \u062a\u0639\u0627\u0645\u0644\u0627\u062a \u0622\u0646\u06cc \u0628\u0627 SignalR \u0627\u0633\u062a. \u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u06a9\u0644\u06cc\u062f\u06cc [&hellip;]<\/p>\n","protected":false},"featured_media":105,"template":"","meta":[],"portfolio_category":[23,15],"class_list":["post-104","portfolio","type-portfolio","status-publish","has-post-thumbnail","hentry","portfolio_category-c","portfolio_category-dotnet"],"_links":{"self":[{"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=\/wp\/v2\/portfolio\/104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=\/wp\/v2\/portfolio"}],"about":[{"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=\/wp\/v2\/types\/portfolio"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=\/wp\/v2\/media\/105"}],"wp:attachment":[{"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=104"}],"wp:term":[{"taxonomy":"portfolio_category","embeddable":true,"href":"https:\/\/danialchoopan.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fportfolio_category&post=104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}