
{"id":232481,"date":"2025-11-21T17:23:35","date_gmt":"2025-11-21T18:23:35","guid":{"rendered":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/"},"modified":"2025-12-24T12:58:23","modified_gmt":"2025-12-24T13:58:23","slug":"supercourse-0000005112","status":"publish","type":"product","link":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/","title":{"rendered":"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647)"},"content":{"rendered":"<div style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 30px; border-radius: 15px; color: white; margin-bottom: 30px;\">\n<h2 style=\"color: white; text-align: center; margin-bottom: 20px;\">\ud83c\udf93 \u062f\u0648\u0631\u0647 \u0622\u0645\u0648\u0632\u0634\u06cc \u062c\u0627\u0645\u0639<\/h2>\n<\/p><\/div>\n<div style=\"margin-bottom: 30px;\">\n<h3 style=\"color: #333; margin-bottom: 15px;\">\ud83d\udcda \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u062f\u0648\u0631\u0647<\/h3>\n<p style=\"font-size: 16px; line-height: 1.8;\"><strong>\u0639\u0646\u0648\u0627\u0646 \u062f\u0648\u0631\u0647:<\/strong> GraphQL \u0628\u0627 ASP.NET Core<\/p>\n<p style=\"font-size: 16px; line-height: 1.8;\"><strong>\u0645\u0648\u0636\u0648\u0639 \u06a9\u0644\u06cc:<\/strong> \u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc<\/p>\n<p style=\"font-size: 16px; line-height: 1.8;\"><strong>\u0645\u0648\u0636\u0648\u0639 \u0645\u06cc\u0627\u0646\u06cc:<\/strong> \u0627\u06cc\u200c\u0627\u0633\u200c\u067e\u06cc \u062f\u0627\u062a \u0646\u062a \u06a9\u0648\u0631 (ASP.NET Core)<\/p>\n<\/div>\n<div style=\"margin-bottom: 30px;\">\n<h3 style=\"color: #333; margin-bottom: 15px;\">\ud83d\udccb \u0633\u0631\u0641\u0635\u0644\u200c\u0647\u0627\u06cc \u062f\u0648\u0631\u0647 (100 \u0645\u0648\u0636\u0648\u0639)<\/h3>\n<ul style=\"list-style-type: none; padding: 0;\">\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">1.<\/span> \u0645\u0642\u062f\u0645\u0647 \u0627\u06cc \u0628\u0631 GraphQL \u0648 ASP.NET Core\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">2.<\/span> \u0686\u0631\u0627 GraphQL\u061f \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">3.<\/span> \u0645\u0642\u0627\u06cc\u0633\u0647 GraphQL \u0628\u0627 REST\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">4.<\/span> \u0646\u0635\u0628 \u0648 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc ASP.NET Core\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">5.<\/span> \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 ASP.NET Core Web API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">6.<\/span> \u0646\u0635\u0628 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">7.<\/span> \u062a\u0646\u0638\u06cc\u0645 \u0627\u0648\u0644\u06cc\u0647 GraphQL \u062f\u0631 ASP.NET Core\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">8.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0627\u0647\u06cc\u0645 Query, Mutation, Subscription\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">9.<\/span> \u0633\u0627\u062e\u062a \u06cc\u06a9 Schema GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">10.<\/span> \u062a\u0639\u0631\u06cc\u0641 \u0627\u0646\u0648\u0627\u0639 \u062f\u0627\u062f\u0647 (Types)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">11.<\/span> \u0627\u06cc\u062c\u0627\u062f \u0641\u06cc\u0644\u062f\u0647\u0627 \u062f\u0631 Schema\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">12.<\/span> \u06a9\u0627\u0631 \u0628\u0627 \u0627\u0646\u0648\u0627\u0639 \u0627\u0633\u06a9\u0627\u0644\u0631 (Scalar Types)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">13.<\/span> \u0633\u0627\u062e\u062a \u06cc\u06a9 Query \u0633\u0627\u062f\u0647\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">14.<\/span> \u0627\u0631\u0633\u0627\u0644 \u06a9\u0648\u0626\u0631\u06cc\u200c\u0647\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 GraphiQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">15.<\/span> \u062f\u0631\u06a9 \u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphiQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">16.<\/span> \u0633\u0627\u062e\u062a \u06cc\u06a9 Mutation \u0633\u0627\u062f\u0647\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">17.<\/span> \u0627\u06cc\u062c\u0627\u062f \u0648\u0631\u0648\u062f\u06cc (Input Types)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">18.<\/span> \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0648\u0631\u0648\u062f\u06cc\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">19.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 \u062f\u0631 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">20.<\/span> \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc Authentication\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">21.<\/span> \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc Authorization\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">22.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0631\u0698\u0646\u200c\u0628\u0646\u062f\u06cc API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">23.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL \u0628\u0627 Entity Framework Core\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">24.<\/span> \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633 \u0628\u0627 Entity Framework Core\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">25.<\/span> \u062a\u0639\u0631\u06cc\u0641 \u0645\u062f\u0644\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 (Models)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">26.<\/span> \u0633\u0627\u062e\u062a Data Context\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">27.<\/span> \u0633\u0627\u062e\u062a Resolver \u0647\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0648\u0626\u0631\u06cc\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">28.<\/span> \u0633\u0627\u062e\u062a Resolver \u0647\u0627 \u0628\u0631\u0627\u06cc Mutation \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">29.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL \u0628\u0627 Dependency Injection\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">30.<\/span> \u0633\u0627\u062e\u062a \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627 \u0648 \u062a\u0632\u0631\u06cc\u0642 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">31.<\/span> \u0628\u0647\u0628\u0648\u062f \u0633\u0627\u062e\u062a\u0627\u0631 \u06a9\u062f \u0628\u0627 Repository Pattern\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">32.<\/span> \u0628\u0647\u0628\u0648\u062f \u0633\u0627\u062e\u062a\u0627\u0631 \u06a9\u062f \u0628\u0627 Service Layer\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">33.<\/span> \u0641\u06cc\u0644\u062a\u0631\u06cc\u0646\u06af \u0648 \u0645\u0631\u062a\u0628 \u0633\u0627\u0632\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">34.<\/span> \u0635\u0641\u062d\u0647 \u0628\u0646\u062f\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">35.<\/span> \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">36.<\/span> \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 FluentValidation\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">37.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL \u0628\u0627 SignalR \u0628\u0631\u0627\u06cc Subscriptions\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">38.<\/span> \u0627\u06cc\u062c\u0627\u062f Subscription \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">39.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627 \u0648 \u0627\u0631\u0633\u0627\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">40.<\/span> \u062a\u0633\u062a\u200c\u0646\u0648\u06cc\u0633\u06cc \u0628\u0631\u0627\u06cc GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">41.<\/span> \u062a\u0633\u062a \u0648\u0627\u062d\u062f (Unit Testing) Resolver \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">42.<\/span> \u062a\u0633\u062a \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 (Integration Testing)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">43.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL \u0628\u0627 GraphQL.NET\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">44.<\/span> \u06a9\u0627\u0631 \u0628\u0627 \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644\u200c\u0647\u0627 (Directives)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">45.<\/span> \u0627\u06cc\u062c\u0627\u062f \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644\u200c\u0647\u0627\u06cc \u0633\u0641\u0627\u0631\u0634\u06cc\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">46.<\/span> Cache \u06a9\u0631\u062f\u0646 \u067e\u0627\u0633\u062e\u200c\u0647\u0627\u06cc GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">47.<\/span> \u0628\u0647\u0628\u0648\u062f \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627 Data Loaders\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">48.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0631\u062a\u0628\u0627\u0637\u0627\u062a (Relations) \u062f\u0631 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">49.<\/span> \u0633\u0627\u062e\u062a\u0646 \u06cc\u06a9 API \u0628\u0631\u0627\u06cc \u06cc\u06a9 Blog\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">50.<\/span> \u0633\u0627\u062e\u062a Schema \u0628\u0631\u0627\u06cc Blog API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">51.<\/span> \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc CRUD \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0631\u0627\u06cc Blog Post \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">52.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0648\u06cc\u0633\u0646\u062f\u06af\u0627\u0646 (Authors)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">53.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Fragments\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">54.<\/span> \u0628\u0647\u0631\u0647\u200c\u06af\u06cc\u0631\u06cc \u0627\u0632 Alias \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">55.<\/span> \u0628\u0647\u0631\u0647\u200c\u06af\u06cc\u0631\u06cc \u0627\u0632 Interface \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">56.<\/span> \u0628\u0647\u0631\u0647\u200c\u06af\u06cc\u0631\u06cc \u0627\u0632 Union \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">57.<\/span> \u062a\u0648\u0644\u06cc\u062f GraphQL Schema \u0627\u0632 \u0631\u0648\u06cc \u06a9\u062f (Code-First)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">58.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Code Generation\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">59.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 tools \u0628\u0631\u0627\u06cc Code Generation\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">60.<\/span> \u0628\u0647\u06cc\u0646\u0647\u200c\u0633\u0627\u0632\u06cc Query \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">61.<\/span> \u0628\u0647\u0628\u0648\u062f \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627 Batching\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">62.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 GraphQL Playground\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">63.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL Playground\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">64.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 introspection\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">65.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Relay \u0648 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">66.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Client-Side GraphQL Libraries\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">67.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Apollo Client\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">68.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 urql\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">69.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 SWR\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">70.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0627\u0646\u0648\u0627\u0639 Authentication\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">71.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 JWT (JSON Web Tokens)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">72.<\/span> \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Refresh Token \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">73.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL Subscriptions \u0628\u0627 Redis\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">74.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 WebSockets\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">75.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 GraphQL Federation\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">76.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Distributed GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">77.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 GraphQL Gateway\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">78.<\/span> \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 GraphQL Gateway\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">79.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a Schema stitching\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">80.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 Performance Tuning\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">81.<\/span> \u0627\u0646\u062f\u0627\u0632\u0647 \u06af\u06cc\u0631\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f (Profiling)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">82.<\/span> \u0628\u0647\u06cc\u0646\u0647 \u0633\u0627\u0632\u06cc \u067e\u0627\u0633\u062e\u200c\u0647\u0627\u06cc GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">83.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Caching \u062f\u0631 \u0633\u0637\u062d API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">84.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Caching \u062f\u0631 \u0633\u0637\u062d Client\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">85.<\/span> \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 \u0644\u0627\u06af\u200c\u06af\u06cc\u0631\u06cc \u062f\u0631 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">86.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 ELK Stack\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">87.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0627\u0645\u0646\u06cc\u062a \u062f\u0631 GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">88.<\/span> \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u062d\u0645\u0644\u0627\u062a Denial of Service (DoS)\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">89.<\/span> \u0627\u0639\u0645\u0627\u0644 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u062f\u0631 Query \u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">90.<\/span> \u0627\u0639\u0645\u0627\u0644 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u062f\u0631 Complexity\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">91.<\/span> \u0627\u0639\u0645\u0627\u0644 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u062f\u0631 Depth\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">92.<\/span> \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 GraphQL Schema Design\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">93.<\/span> \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634\u200c\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc Schema\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">94.<\/span> \u0645\u062f\u06cc\u0631\u06cc\u062a Schema Evolution\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">95.<\/span> \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc Schema\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">96.<\/span> \u0646\u0648\u0634\u062a\u0646 \u0645\u0633\u062a\u0646\u062f\u0627\u062a \u0628\u0631\u0627\u06cc GraphQL API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">97.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Swagger\/OpenAPI \u0628\u0631\u0627\u06cc GraphQL\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">98.<\/span> \u0627\u062a\u0648\u0645\u0627\u0633\u06cc\u0648\u0646 \u062a\u0633\u062a\u200c\u0647\u0627\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">99.<\/span> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 CI\/CD \u0628\u0631\u0627\u06cc GraphQL API\n                    <\/li>\n<li style=\"padding: 8px 0; border-bottom: 1px solid #eee;\">\n                        <span style=\"color: #667eea; font-weight: bold;\">100.<\/span> \u0627\u0633\u062a\u0642\u0631\u0627\u0631 GraphQL API \u062f\u0631 Cloud\n                    <\/li>\n<\/ul>\n<\/div>\n<div style=\"margin-bottom: 30px;\"><!DOCTYPE html><br \/>\n<html lang=\"fa\" dir=\"rtl\"><br \/>\n<head><br \/>\n    <meta charset=\"UTF-8\"><br \/>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><br \/>\n    <title>\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631<\/title><br \/>\n    <meta name=\"description\" content=\"\u0628\u0627 \u062f\u0648\u0631\u0647 GraphQL \u0628\u0627 ASP.NET Core\u060c API\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u0648 \u06a9\u0627\u0631\u0622\u0645\u062f \u0628\u0633\u0627\u0632\u06cc\u062f. \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc Schema \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Queries\u060c Mutations \u0648 Subscriptions \u0628\u0627 Hot Chocolate \u0648 Entity Framework Core. \u0622\u06cc\u0646\u062f\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u06cc \u0631\u0627 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0646\u06cc\u062f.\"><br \/>\n    <meta name=\"keywords\" content=\"GraphQL, ASP.NET Core, \u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc, API, .NET, Hot Chocolate, Entity Framework Core, \u062a\u0648\u0633\u0639\u0647 \u0648\u0628, Backend, \u062f\u0648\u0631\u0647 \u0622\u0645\u0648\u0632\u0634\u06cc, \u0648\u0628 \u0633\u0631\u0648\u06cc\u0633, REST, C#\"><\/p>\n<style>\n        body {\n            font-family: 'Tahoma', 'Arial', sans-serif;\n            line-height: 1.8;\n            color: #333;\n            max-width: 960px;\n            margin: 20px auto;\n            padding: 0 15px;\n            background-color: #f9f9f9;\n        }\n        h1, h2, h3 {\n            color: #2c3e50;\n            margin-top: 30px;\n            margin-bottom: 15px;\n        }\n        h1 {\n            font-size: 2.5em;\n            text-align: center;\n            color: #007bff;\n            border-bottom: 2px solid #007bff;\n            padding-bottom: 10px;\n        }\n        h2 {\n            font-size: 1.8em;\n            color: #0056b3;\n            border-bottom: 1px solid #eee;\n            padding-bottom: 5px;\n        }\n        h3 {\n            font-size: 1.4em;\n            color: #007bff;\n        }\n        p {\n            margin-bottom: 15px;\n            text-align: justify;\n        }\n        ul {\n            list-style-type: none;\n            padding-right: 0;\n        }\n        ul li {\n            background: #e9f7ff;\n            margin-bottom: 10px;\n            padding: 10px 15px;\n            border-radius: 5px;\n            border-right: 4px solid #007bff;\n            font-size: 1.1em;\n        }\n        .section-intro {\n            background-color: #e0f7fa;\n            padding: 20px;\n            border-radius: 8px;\n            border-left: 5px solid #00bcd4;\n            margin-bottom: 30px;\n        }\n        .why-attend ul li {\n            background: #fff3e0;\n            border-right-color: #ff9800;\n        }\n        .syllabus-list ul {\n            columns: 2; \/* For better readability of many items *\/\n            -webkit-columns: 2;\n            -moz-columns: 2;\n        }\n        .syllabus-list ul li {\n            background: #f0f0f0;\n            border-right-color: #555;\n            font-size: 0.95em;\n            padding: 8px 12px;\n            margin-bottom: 5px;\n            break-inside: avoid; \/* Prevent list items from breaking across columns *\/\n        }\n        @media (max-width: 768px) {\n            .syllabus-list ul {\n                columns: 1;\n            }\n        }\n    <\/style>\n<p><\/head><br \/>\n<body><\/p>\n<h1>\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631<\/h1>\n<div class=\"section-intro\">\n<h2>\u0645\u0639\u0631\u0641\u06cc \u062f\u0648\u0631\u0647: \u0622\u06cc\u0646\u062f\u0647 API\u0647\u0627 \u062f\u0631 \u062f\u0633\u062a\u0627\u0646 \u0634\u0645\u0627!<\/h2>\n<p>\u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c \u0633\u0631\u0639\u062a\u060c \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc \u062d\u0631\u0641 \u0627\u0648\u0644 \u0631\u0627 \u0645\u06cc\u200c\u0632\u0646\u062f. API\u0647\u0627 \u0634\u0631\u06cc\u0627\u0646 \u062d\u06cc\u0627\u062a\u06cc \u0647\u0631 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0645\u062f\u0631\u0646\u06cc \u0647\u0633\u062a\u0646\u062f \u0648 \u0646\u062d\u0648\u0647 \u062a\u0639\u0627\u0645\u0644 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0628\u0627 \u0628\u06a9\u200c\u0627\u0646\u062f \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f. \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 RESTful API\u0647\u0627 \u0633\u0627\u0644\u200c\u0647\u0627 \u067e\u0627\u062f\u0634\u0627\u0647 \u0628\u0644\u0627\u0645\u0646\u0627\u0632\u0639 \u0628\u0648\u062f\u0647\u200c\u0627\u0646\u062f\u060c \u0628\u0627 \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc\u06cc \u0646\u0638\u06cc\u0631 &#8220;over-fetching&#8221; (\u062f\u0631\u06cc\u0627\u0641\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0628\u06cc\u0634 \u0627\u0632 \u062d\u062f \u0646\u06cc\u0627\u0632) \u0648 &#8220;under-fetching&#8221; (\u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0628\u0631\u0627\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0645\u0644) \u0631\u0648\u0628\u0631\u0648 \u0647\u0633\u062a\u06cc\u0645 \u06a9\u0647 \u0645\u0646\u062c\u0631 \u0628\u0647 \u06a9\u0627\u0647\u0634 \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0648 \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc\u200c\u0647\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<p>\u0627\u06cc\u0646\u062c\u0627\u0633\u062a \u06a9\u0647 GraphQL \u0648\u0627\u0631\u062f \u0645\u06cc\u062f\u0627\u0646 \u0645\u06cc\u200c\u0634\u0648\u062f! \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633\u200c\u0648\u062c\u0648 \u0628\u0631\u0627\u06cc API\u0647\u0627 \u0648 \u06cc\u06a9 runtime \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u067e\u0631\u0633\u200c\u0648\u062c\u0648\u0647\u0627\u060c \u06a9\u0647 \u0628\u0647 \u0634\u0645\u0627 \u0642\u062f\u0631\u062a \u0645\u06cc\u200c\u062f\u0647\u062f \u062f\u0642\u06cc\u0642\u0627\u064b \u0647\u0645\u0627\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u0631\u0627 \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f\u060c \u062f\u0631 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0648 \u0628\u0627 \u0633\u0627\u062e\u062a\u0627\u0631\u06cc \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f\u060c \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0646\u06cc\u062f. GraphQL \u062a\u062d\u0648\u0644\u06cc \u062f\u0631 \u0646\u062d\u0648\u0647 \u0637\u0631\u0627\u062d\u06cc \u0648 \u0645\u0635\u0631\u0641 API\u0647\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647 \u0648 \u0631\u0627\u0647 \u062d\u0644\u06cc \u0645\u062f\u0631\u0646 \u0628\u0631\u0627\u06cc \u0645\u0634\u06a9\u0644\u0627\u062a \u0631\u0627\u06cc\u062c REST \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f.<\/p>\n<p>\u062f\u0648\u0631\u0647 &#8220;GraphQL \u0628\u0627 ASP.NET Core&#8221; \u062f\u0631\u0648\u0627\u0632\u0647\u200c\u0627\u06cc \u0627\u0633\u062a \u0628\u0647 \u0633\u0648\u06cc \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0646\u0633\u0644 \u062c\u062f\u06cc\u062f\u060c \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 \u0642\u062f\u0631\u062a\u0645\u0646\u062f ASP.NET Core \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 GraphQL \u0645\u0627\u0646\u0646\u062f Hot Chocolate. \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0628\u0646\u06cc\u0627\u062f\u06cc GraphQL \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 \u062f\u0631 \u0645\u062d\u06cc\u0637 \u062f\u0627\u062a\u200c\u0646\u062a\u060c \u0647\u0645\u0631\u0627\u0647\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0647 \u0634\u0645\u0627 \u0645\u06cc\u200c\u0622\u0645\u0648\u0632\u062f \u06a9\u0647 \u0628\u0631\u0627\u06cc \u0645\u062a\u0645\u0627\u06cc\u0632 \u0634\u062f\u0646 \u062f\u0631 \u0628\u0627\u0632\u0627\u0631 \u06a9\u0627\u0631 \u0627\u0645\u0631\u0648\u0632 \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a. \u0622\u0645\u0627\u062f\u0647\u200c\u0627\u06cc\u062f \u062a\u0627 API\u0647\u0627\u06cc \u0647\u0648\u0634\u0645\u0646\u062f\u062a\u0631\u060c \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u0648 \u0645\u0642\u06cc\u0627\u0633\u200c\u067e\u0630\u06cc\u0631\u062a\u0631 \u0628\u0633\u0627\u0632\u06cc\u062f\u061f<\/p>\n<\/p><\/div>\n<h2>\u062f\u0631\u0628\u0627\u0631\u0647 \u062f\u0648\u0631\u0647: \u0627\u0632 \u0635\u0641\u0631 \u062a\u0627 \u0635\u062f GraphQL \u062f\u0631 .NET<\/h2>\n<p>\u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 \u0648 \u06a9\u0627\u0645\u0644\u0627\u064b \u0639\u0645\u0644\u06cc\u060c \u0628\u0647 \u0634\u0645\u0627 \u06a9\u0645\u06a9 \u0645\u06cc\u200c\u06a9\u0646\u062f \u062a\u0627 \u0628\u0631 GraphQL \u0645\u0633\u0644\u0637 \u0634\u0648\u06cc\u062f \u0648 \u0622\u0646 \u0631\u0627 \u0628\u0647 \u0628\u0647\u062a\u0631\u06cc\u0646 \u0634\u06a9\u0644 \u062f\u0631 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc ASP.NET Core \u062e\u0648\u062f \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f. \u0645\u0627 \u0642\u062f\u0645 \u0628\u0647 \u0642\u062f\u0645 \u0627\u0632 \u062a\u0639\u0631\u06cc\u0641 Schema \u0648 Types \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Queries\u060c Mutations \u0648 Subscriptions (\u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0644\u0627\u062f\u0631\u0646\u06af) \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Entity Framework Core \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0648 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u200c\u0627\u06cc \u0645\u0627\u0646\u0646\u062f Hot Chocolate \u0641\u0631\u0627 \u062e\u0648\u0627\u0647\u06cc\u0645 \u06af\u0631\u0641\u062a. \u0647\u062f\u0641 \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647\u060c \u062a\u0628\u062f\u06cc\u0644 \u0634\u0645\u0627 \u0628\u0647 \u06cc\u06a9 \u0645\u062a\u062e\u0635\u0635 \u062f\u0631 \u0632\u0645\u06cc\u0646\u0647 \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc GraphQL \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u06a9\u0648\u0633\u06cc\u0633\u062a\u0645 \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0645\u0627\u06cc\u06a9\u0631\u0648\u0633\u0627\u0641\u062a \u0627\u0633\u062a.<\/p>\n<h2>\u0645\u0648\u0636\u0648\u0639\u0627\u062a \u06a9\u0644\u06cc\u062f\u06cc: \u0622\u0646\u0686\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0645\u06cc\u200c\u0622\u0645\u0648\u0632\u06cc\u062f<\/h2>\n<ul>\n<li><strong>\u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 GraphQL:<\/strong> \u0686\u0631\u0627 GraphQL\u061f \u062a\u0641\u0627\u0648\u062a\u200c\u0647\u0627 \u0628\u0627 REST\u060c \u0645\u0641\u0627\u0647\u06cc\u0645 \u0627\u0635\u0644\u06cc.<\/li>\n<li><strong>\u0637\u0631\u0627\u062d\u06cc Schema:<\/strong> Types\u060c Fields\u060c Arguments\u060c Enums\u060c Input Types \u0648 Interfaces.<\/li>\n<li><strong>Queries \u0648 Mutations:<\/strong> \u062e\u0648\u0627\u0646\u062f\u0646 \u0648 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc \u0628\u06cc\u200c\u0646\u0638\u06cc\u0631.<\/li>\n<li><strong>Subscriptions:<\/strong> \u0627\u06cc\u062c\u0627\u062f \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc Real-time \u0628\u0627 GraphQL.<\/li>\n<li><strong>\u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0628\u0627 ASP.NET Core:<\/strong> \u0645\u0639\u0631\u0641\u06cc \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc Hot Chocolate \u0648 GraphQL.NET.<\/li>\n<li><strong>\u062a\u0644\u0641\u06cc\u0642 \u0628\u0627 Entity Framework Core:<\/strong> \u06a9\u0627\u0631 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0632 \u0637\u0631\u06cc\u0642 GraphQL.<\/li>\n<li><strong>\u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0648 \u0645\u062c\u0648\u0632\u062f\u0647\u06cc (Authentication &#038; Authorization):<\/strong> \u0627\u06cc\u0645\u0646\u200c\u0633\u0627\u0632\u06cc API\u0647\u0627\u06cc GraphQL.<\/li>\n<li><strong>\u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 \u0648 \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc:<\/strong> \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0628\u06cc\u200c\u0646\u0642\u0635.<\/li>\n<li><strong>\u0628\u0647\u06cc\u0646\u0647\u200c\u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f:<\/strong> N+1 Problem\u060c DataLoaders\u060c Caching.<\/li>\n<li><strong>\u062a\u0633\u062a \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631:<\/strong> \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0635\u062d\u062a \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f API \u062f\u0631 \u0645\u062d\u06cc\u0637 \u0639\u0645\u0644\u06cc\u0627\u062a\u06cc.<\/li>\n<\/ul>\n<h2>\u0645\u062e\u0627\u0637\u0628\u0627\u0646 \u062f\u0648\u0631\u0647: \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0628\u0631\u0627\u06cc \u0686\u0647 \u06a9\u0633\u0627\u0646\u06cc \u0645\u0646\u0627\u0633\u0628 \u0627\u0633\u062a\u061f<\/h2>\n<ul>\n<li><strong>\u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0628\u06a9\u200c\u0627\u0646\u062f .NET:<\/strong> \u0627\u06af\u0631 \u0628\u0627 C# \u0648 ASP.NET Core \u06a9\u0627\u0631 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f \u0648 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0627\u0631\u062a\u0642\u0627\u0621 \u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc \u062e\u0648\u062f \u062f\u0631 \u0633\u0627\u062e\u062a API \u0647\u0633\u062a\u06cc\u062f.<\/li>\n<li><strong>\u0645\u0639\u0645\u0627\u0631\u0627\u0646 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631:<\/strong> \u0628\u0631\u0627\u06cc \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0631\u0648\u06cc\u06a9\u0631\u062f\u0647\u0627\u06cc \u0646\u0648\u06cc\u0646 \u062f\u0631 \u0637\u0631\u0627\u062d\u06cc API \u0648 \u062a\u0635\u0645\u06cc\u0645\u200c\u06af\u06cc\u0631\u06cc\u200c\u0647\u0627\u06cc \u0645\u0639\u0645\u0627\u0631\u06cc \u0622\u06cc\u0646\u062f\u0647.<\/li>\n<li><strong>\u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f:<\/strong> \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u0646\u062f \u062f\u0631\u06a9 \u0639\u0645\u06cc\u0642\u200c\u062a\u0631\u06cc \u0627\u0632 \u0646\u062d\u0648\u0647 \u06a9\u0627\u0631 API\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0646\u062f \u0648 \u0628\u062a\u0648\u0627\u0646\u0646\u062f \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 \u0628\u06a9\u200c\u0627\u0646\u062f \u0645\u0646\u062a\u0642\u0644 \u06a9\u0646\u0646\u062f.<\/li>\n<li><strong>\u0647\u0631 \u06a9\u0633\u06cc \u06a9\u0647 \u0628\u0627 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a\u200c\u0647\u0627\u06cc REST \u062f\u0633\u062a \u0648 \u067e\u0646\u062c\u0647 \u0646\u0631\u0645 \u0645\u06cc\u200c\u06a9\u0646\u062f:<\/strong> \u0648 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0631\u0627\u0647 \u062d\u0644\u06cc \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0648 \u062a\u0639\u0627\u0645\u0644\u0627\u062a \u0633\u0631\u0648\u06cc\u0633 \u0627\u0633\u062a.<\/li>\n<li><strong>\u062f\u0627\u0646\u0634\u062c\u0648\u06cc\u0627\u0646 \u0648 \u062a\u0627\u0632\u0647\u200c\u0648\u0627\u0631\u062f\u0627\u0646 \u0628\u0647 \u062f\u0646\u06cc\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u06cc:<\/strong> \u06a9\u0647 \u0642\u0635\u062f \u062f\u0627\u0631\u0646\u062f \u0627\u0632 \u0647\u0645\u0627\u0646 \u0627\u0628\u062a\u062f\u0627 \u0628\u0627 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u200c\u0647\u0627\u06cc \u0631\u0648\u0632 \u062f\u0646\u06cc\u0627 \u0622\u0634\u0646\u0627 \u0634\u0648\u0646\u062f \u0648 \u06af\u0627\u0645\u06cc \u0628\u0644\u0646\u062f \u062f\u0631 \u0645\u0633\u06cc\u0631 \u0634\u063a\u0644\u06cc \u062e\u0648\u062f \u0628\u0631\u062f\u0627\u0631\u0646\u062f.<\/li>\n<\/ul>\n<div class=\"why-attend\">\n<h2>\u0686\u0631\u0627 \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0631\u0627 \u0628\u06af\u0630\u0631\u0627\u0646\u06cc\u0645\u061f \u0645\u0632\u0627\u06cc\u0627\u06cc \u0628\u06cc\u200c\u0646\u0638\u06cc\u0631 GraphQL \u0628\u0627 ASP.NET Core<\/h2>\n<ul>\n<li>\n<h3>\u062d\u0644 \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc REST:<\/h3>\n<p>\u0627\u0632 \u0645\u0634\u06a9\u0644\u0627\u062a\u06cc \u0645\u0627\u0646\u0646\u062f over-fetching (\u062f\u0631\u06cc\u0627\u0641\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0627\u0636\u0627\u0641\u06cc) \u0648 under-fetching (\u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0628\u0631\u0627\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644) \u06a9\u0647 \u062f\u0631 REST \u0631\u0627\u06cc\u062c \u0627\u0633\u062a\u060c \u062e\u062f\u0627\u062d\u0627\u0641\u0638\u06cc \u06a9\u0646\u06cc\u062f. GraphQL \u0628\u0647 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u062f\u0642\u06cc\u0642\u0627\u064b \u0647\u0645\u0627\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u0631\u0627 \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f\u060c \u062f\u0631 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0648\u0627\u062d\u062f \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0646\u062f \u0648 \u0627\u06cc\u0646 \u06cc\u0639\u0646\u06cc \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0628\u0627\u0644\u0627\u062a\u0631 \u0648 \u067e\u0647\u0646\u0627\u06cc \u0628\u0627\u0646\u062f \u06a9\u0645\u062a\u0631.<\/p>\n<\/li>\n<li>\n<h3>\u0627\u0641\u0632\u0627\u06cc\u0634 \u0628\u0647\u0631\u0647\u200c\u0648\u0631\u06cc \u062a\u06cc\u0645:<\/h3>\n<p>\u0628\u0627 GraphQL\u060c \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0648 \u0628\u06a9\u200c\u0627\u0646\u062f \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0635\u0648\u0631\u062a \u0645\u0648\u0627\u0632\u06cc \u0628\u0627 \u06cc\u06a9\u062f\u06cc\u06af\u0631 \u06a9\u0627\u0631 \u06a9\u0646\u0646\u062f \u0648 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc\u200c\u0647\u0627 \u06a9\u0645\u062a\u0631 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u062f\u06cc\u06af\u0631 \u0645\u0646\u062a\u0638\u0631 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u062f\u0631 \u0628\u06a9\u200c\u0627\u0646\u062f \u0628\u0631\u0627\u06cc \u062f\u0631\u06cc\u0627\u0641\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0646\u0645\u06cc\u200c\u0645\u0627\u0646\u062f \u0648 \u0628\u06a9\u200c\u0627\u0646\u062f \u0646\u06cc\u0632 \u0628\u0627 \u06cc\u06a9 API \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u062a\u0631\u060c \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u0645\u062a\u063a\u06cc\u0631 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0631\u0627 \u0631\u0627\u062d\u062a\u200c\u062a\u0631 \u0628\u0631\u0622\u0648\u0631\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u06a9\u0627\u0647\u0634 \u0647\u0632\u06cc\u0646\u0647\u200c\u0647\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0648 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc:<\/h3>\n<p>\u06a9\u062f \u06a9\u0645\u062a\u0631\u060c \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u06a9\u0645\u062a\u0631\u060c \u0628\u0627\u06af\u200c\u0647\u0627\u06cc \u06a9\u0645\u062a\u0631! GraphQL \u0628\u0647 \u062f\u0644\u06cc\u0644 \u0637\u0631\u0627\u062d\u06cc Schema \u0642\u0648\u06cc \u0648 \u0645\u0633\u062a\u0646\u062f\u0627\u062a \u062e\u0648\u062f\u06a9\u0627\u0631\u060c \u0646\u06af\u0647\u062f\u0627\u0631\u06cc API\u0647\u0627 \u0631\u0627 \u0622\u0633\u0627\u0646\u200c\u062a\u0631 \u06a9\u0631\u062f\u0647 \u0648 \u062e\u0637\u0627\u0647\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637\u06cc \u0631\u0627 \u0628\u0647 \u062d\u062f\u0627\u0642\u0644 \u0645\u06cc\u200c\u0631\u0633\u0627\u0646\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc \u0622\u06cc\u0646\u062f\u0647\u200c\u0646\u06af\u0631:<\/h3>\n<p>GraphQL \u06cc\u06a9 \u0641\u0646\u0627\u0648\u0631\u06cc \u062f\u0631 \u062d\u0627\u0644 \u0631\u0634\u062f \u0633\u0631\u06cc\u0639 \u0627\u0633\u062a \u06a9\u0647 \u062a\u0648\u0633\u0637 \u0634\u0631\u06a9\u062a\u200c\u0647\u0627\u06cc \u0628\u0632\u0631\u06af\u06cc \u0645\u0627\u0646\u0646\u062f \u0641\u06cc\u0633\u200c\u0628\u0648\u06a9\u060c \u06af\u06cc\u062a\u200c\u0647\u0627\u0628 \u0648 \u0646\u062a\u200c\u0641\u0644\u06cc\u06a9\u0633 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0628\u0627 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0627\u06cc\u0646 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u060c \u0634\u0645\u0627 \u0646\u0647 \u062a\u0646\u0647\u0627 \u0627\u0645\u0631\u0648\u0632 \u0631\u0627 \u067e\u0648\u0634\u0634 \u0645\u06cc\u200c\u062f\u0647\u06cc\u062f\u060c \u0628\u0644\u06a9\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u0641\u0631\u0635\u062a\u200c\u0647\u0627\u06cc \u0634\u063a\u0644\u06cc \u0622\u06cc\u0646\u062f\u0647 \u0622\u0645\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f \u0648 \u0627\u0632 \u0631\u0642\u0628\u0627 \u067e\u06cc\u0634\u06cc \u0645\u06cc\u200c\u06af\u06cc\u0631\u06cc\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0627\u06a9\u0648\u0633\u06cc\u0633\u062a\u0645 \u0642\u062f\u0631\u062a\u0645\u0646\u062f .NET:<\/h3>\n<p>\u062a\u0631\u06a9\u06cc\u0628 \u0642\u062f\u0631\u062a \u0648 \u067e\u0627\u06cc\u062f\u0627\u0631\u06cc ASP.NET Core \u0628\u0627 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc GraphQL\u060c \u0628\u0647 \u0634\u0645\u0627 \u0627\u06cc\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0631\u0627 \u0645\u06cc\u200c\u062f\u0647\u062f \u06a9\u0647 API\u0647\u0627\u06cc \u0628\u0633\u06cc\u0627\u0631 \u0645\u0642\u06cc\u0627\u0633\u200c\u067e\u0630\u06cc\u0631\u060c \u0627\u0645\u0646 \u0648 \u067e\u0631\u0641\u0648\u0631\u0645\u0646\u0633 \u0628\u0633\u0627\u0632\u06cc\u062f. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f Hot Chocolate\u060c \u0641\u0631\u0622\u06cc\u0646\u062f \u062a\u0648\u0633\u0639\u0647 \u0631\u0627 \u0644\u0630\u062a\u200c\u0628\u062e\u0634 \u0648 \u06a9\u0627\u0631\u0622\u0645\u062f \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0639\u0645\u0644\u06cc \u0648 \u062a\u062c\u0631\u0628\u0647 \u0648\u0627\u0642\u0639\u06cc:<\/h3>\n<p>\u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u062a\u0646\u0647\u0627 \u0628\u0647 \u062a\u0626\u0648\u0631\u06cc \u0646\u0645\u06cc\u200c\u067e\u0631\u062f\u0627\u0632\u062f. \u0628\u0627 \u0645\u062b\u0627\u0644\u200c\u0647\u0627\u06cc \u0639\u0645\u0644\u06cc\u060c \u0633\u0646\u0627\u0631\u06cc\u0648\u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0648 \u06a9\u062f\u0646\u0648\u06cc\u0633\u06cc \u06af\u0627\u0645 \u0628\u0647 \u06af\u0627\u0645\u060c \u0634\u0645\u0627 \u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc GraphQL \u062f\u0631 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u062e\u0648\u062f \u0631\u0627 \u0628\u0647 \u062f\u0633\u062a \u062e\u0648\u0627\u0647\u06cc\u062f \u0622\u0648\u0631\u062f.<\/p>\n<\/li>\n<\/ul><\/div>\n<div class=\"syllabus-list\">\n<h2>\u0633\u0631\u0641\u0635\u0644\u200c\u0647\u0627\u06cc \u062c\u0627\u0645\u0639 \u062f\u0648\u0631\u0647: 100 \u06af\u0627\u0645 \u062a\u0627 \u062a\u0633\u0644\u0637 \u0628\u0631 GraphQL \u0628\u0627 ASP.NET Core<\/h2>\n<h3>\u0628\u062e\u0634 \u0627\u0648\u0644: \u0645\u0628\u0627\u0646\u06cc \u0648 \u0645\u0641\u0627\u0647\u06cc\u0645 GraphQL<\/h3>\n<ul>\n<li>1. \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 GraphQL: \u0686\u0631\u0627 \u0648 \u0686\u06af\u0648\u0646\u0647\u061f<\/li>\n<li>2. \u062a\u0641\u0627\u0648\u062a\u200c\u0647\u0627\u06cc \u06a9\u0644\u06cc\u062f\u06cc GraphQL \u0628\u0627 RESTful API\u0647\u0627<\/li>\n<li>3. \u0645\u0639\u0645\u0627\u0631\u06cc GraphQL: \u06a9\u0644\u0627\u06cc\u0646\u062a\u060c \u0633\u0631\u0648\u0631\u060c Schema<\/li>\n<li>4. \u0627\u0646\u0648\u0627\u0639 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 GraphQL: Scalar Types<\/li>\n<li>5. \u0622\u0628\u062c\u06a9\u062a \u062a\u0627\u06cc\u067e\u200c\u0647\u0627 (Object Types) \u0648 \u0641\u06cc\u0644\u062f\u0647\u0627 (Fields)<\/li>\n<li>6. \u062a\u0639\u0631\u06cc\u0641 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627 (Arguments) \u0628\u0631\u0627\u06cc \u0641\u06cc\u0644\u062f\u0647\u0627<\/li>\n<li>7. Enum Type \u0647\u0627 \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u062f\u06cc\u0631 \u062b\u0627\u0628\u062a<\/li>\n<li>8. \u0627\u06cc\u0646\u062a\u0631\u0641\u06cc\u0633\u200c\u0647\u0627 (Interfaces) \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a Polymorphism<\/li>\n<li>9. \u06cc\u0648\u0646\u06cc\u0648\u0646 \u062a\u0627\u06cc\u067e\u200c\u0647\u0627 (Union Types)<\/li>\n<li>10. Input Type \u0647\u0627 \u0628\u0631\u0627\u06cc \u0648\u0631\u0648\u062f\u06cc\u200c\u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647<\/li>\n<li>11. \u0645\u0641\u0627\u0647\u06cc\u0645 Query Operation \u0648 Syntax<\/li>\n<li>12. \u0633\u0627\u062e\u062a \u0627\u0648\u0644\u06cc\u0646 Query \u0633\u0627\u062f\u0647<\/li>\n<li>13. Fetching Nested Data \u0628\u0627 Query \u0647\u0627<\/li>\n<li>14. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Arguments \u062f\u0631 Query \u0647\u0627<\/li>\n<li>15. Alias \u0647\u0627 \u0628\u0631\u0627\u06cc \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u062a\u06a9\u0631\u0627\u0631\u06cc<\/li>\n<li>16. Fragment \u0647\u0627 \u0628\u0631\u0627\u06cc Query \u0647\u0627\u06cc \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f<\/li>\n<li>17. \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 (Variables) \u062f\u0631 Query \u0647\u0627<\/li>\n<li>18. Directive \u0647\u0627: @include \u0648 @skip<\/li>\n<li>19. \u0639\u0645\u0644\u06cc\u0627\u062a Mutation: \u062a\u063a\u06cc\u06cc\u0631 \u0648 \u0627\u06cc\u062c\u0627\u062f \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>20. \u0633\u0627\u062e\u062a \u0627\u0648\u0644\u06cc\u0646 Mutation<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u062f\u0648\u0645: \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0628\u0627 ASP.NET Core \u0648 Hot Chocolate<\/h3>\n<ul>\n<li>21. \u0645\u0639\u0631\u0641\u06cc ASP.NET Core \u0648 \u0641\u0644\u0633\u0641\u0647 \u0622\u0646<\/li>\n<li>22. \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0631\u0648\u0698\u0647 ASP.NET Core \u062e\u0627\u0644\u06cc<\/li>\n<li>23. \u0645\u0639\u0631\u0641\u06cc Hot Chocolate: \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 GraphQL \u0628\u0631\u0627\u06cc .NET<\/li>\n<li>24. \u0646\u0635\u0628 \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Hot Chocolate \u062f\u0631 \u067e\u0631\u0648\u0698\u0647<\/li>\n<li>25. \u0627\u06cc\u062c\u0627\u062f \u0627\u0648\u0644\u06cc\u0646 Schema \u062f\u0631 Hot Chocolate<\/li>\n<li>26. \u062a\u0639\u0631\u06cc\u0641 Object Type \u0647\u0627 \u0628\u0627 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627\u06cc C#<\/li>\n<li>27. Resolver \u0647\u0627: \u0646\u062d\u0648\u0647 \u0648\u0627\u06a9\u0634\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>28. Query Type \u0648 Mapping \u0622\u0646 \u0628\u0647 Resolver \u0647\u0627<\/li>\n<li>29. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Dependency Injection \u062f\u0631 Resolver \u0647\u0627<\/li>\n<li>30. \u0645\u0639\u0631\u0641\u06cc DataLoader \u0647\u0627 \u0628\u0631\u0627\u06cc \u062d\u0644 \u0645\u0634\u06a9\u0644 N+1<\/li>\n<li>31. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc DataLoader \u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u06cc\u06a9 \u0628\u0647 \u0686\u0646\u062f<\/li>\n<li>32. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc DataLoader \u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0686\u0646\u062f \u0628\u0647 \u0686\u0646\u062f<\/li>\n<li>33. Mutation Type \u0648 Mapping \u0622\u0646 \u0628\u0647 Resolver \u0647\u0627<\/li>\n<li>34. \u062f\u0631\u06cc\u0627\u0641\u062a Input Type \u0647\u0627 \u062f\u0631 Mutation \u0647\u0627<\/li>\n<li>35. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 (Error Handling) \u062f\u0631 Hot Chocolate<\/li>\n<li>36. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Data Validation \u0628\u0631\u0627\u06cc Input \u0647\u0627<\/li>\n<li>37. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Schema First vs Code First Approach<\/li>\n<li>38. \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 GraphQL: Banana Cake Pop \u0648 GraphQL Playground<\/li>\n<li>39. \u06a9\u0627\u0631 \u0628\u0627 Middleware \u062f\u0631 Hot Chocolate<\/li>\n<li>40. \u0627\u0641\u0632\u0648\u062f\u0646 Logging \u0628\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc GraphQL<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0633\u0648\u0645: \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 (Entity Framework Core)<\/h3>\n<ul>\n<li>41. \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 Entity Framework Core<\/li>\n<li>42. \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc EF Core \u0648 \u0627\u062a\u0635\u0627\u0644 \u0628\u0647 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647<\/li>\n<li>43. \u062a\u0639\u0631\u06cc\u0641 DbContext \u0648 DbSet \u0647\u0627<\/li>\n<li>44. \u0627\u0646\u062c\u0627\u0645 Migrations \u062f\u0631 EF Core<\/li>\n<li>45. Fetching Data \u0628\u0627 EF Core \u062f\u0631 Resolver \u0647\u0627<\/li>\n<li>46. Add\/Update\/Delete \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 EF Core \u062f\u0631 Mutation \u0647\u0627<\/li>\n<li>47. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Include \u0648 ThenInclude \u062f\u0631 Query \u0647\u0627<\/li>\n<li>48. \u0641\u06cc\u0644\u062a\u0631 \u06a9\u0631\u062f\u0646 \u0648 \u0645\u0631\u062a\u0628\u200c\u0633\u0627\u0632\u06cc (Filtering &#038; Sorting) \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>49. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Pagination (\u0635\u0641\u062d\u0647\u200c\u0628\u0646\u062f\u06cc) \u062f\u0631 GraphQL<\/li>\n<li>50. Paging \u0628\u0627 Cursor-based pagination<\/li>\n<li>51. Paging \u0628\u0627 Offset-based pagination<\/li>\n<li>52. \u0627\u0641\u0632\u0648\u062f\u0646 Global Id \u0628\u0647 \u0622\u0628\u062c\u06a9\u062a\u200c\u0647\u0627<\/li>\n<li>53. \u0637\u0631\u0627\u062d\u06cc Graph \u0628\u0631\u0627\u06cc \u0631\u0648\u0627\u0628\u0637 \u067e\u06cc\u0686\u06cc\u062f\u0647 (\u0645\u062b\u0627\u0644: \u0628\u0644\u0627\u06af\u060c \u0641\u0631\u0648\u0634\u06af\u0627\u0647)<\/li>\n<li>54. \u06a9\u0627\u0631 \u0628\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u062a\u0627\u0631\u06cc\u062e \u0648 \u0632\u0645\u0627\u0646<\/li>\n<li>55. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062a\u0631\u0627\u06a9\u0646\u0634\u200c\u0647\u0627 (Transactions) \u062f\u0631 Mutations<\/li>\n<li>56. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Repository Pattern \u0628\u0627 EF Core<\/li>\n<li>57. Unit of Work Pattern \u062f\u0631 GraphQL API<\/li>\n<li>58. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Async\/Await \u062f\u0631 Resolver \u0647\u0627<\/li>\n<li>59. \u06a9\u0627\u0631 \u0628\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0628\u0627\u06cc\u0646\u0631\u06cc (Blob Data)<\/li>\n<li>60. GraphQL \u0648 Cosmos DB (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0686\u0647\u0627\u0631\u0645: \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a\u060c \u0645\u062c\u0648\u0632\u062f\u0647\u06cc \u0648 \u0627\u0645\u0646\u06cc\u062a<\/h3>\n<ul>\n<li>61. \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 \u0627\u0645\u0646\u06cc\u062a \u062f\u0631 API\u0647\u0627<\/li>\n<li>62. Authentication (\u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a) \u062f\u0631 ASP.NET Core<\/li>\n<li>63. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc JWT Bearer Authentication<\/li>\n<li>64. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Authorization (\u0645\u062c\u0648\u0632\u062f\u0647\u06cc) \u062f\u0631 Hot Chocolate<\/li>\n<li>65. Policy-Based Authorization<\/li>\n<li>66. Role-Based Authorization<\/li>\n<li>67. \u0627\u0639\u0645\u0627\u0644 \u0645\u062c\u0648\u0632\u0647\u0627 \u062f\u0631 \u0633\u0637\u062d \u0641\u06cc\u0644\u062f\u0647\u0627<\/li>\n<li>68. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0631\u0627\u06cc Mutations<\/li>\n<li>69. \u0645\u062d\u062f\u0648\u062f \u06a9\u0631\u062f\u0646 \u0646\u0631\u062e \u062f\u0631\u062e\u0648\u0627\u0633\u062a (Rate Limiting)<\/li>\n<li>70. \u0645\u062d\u0627\u0641\u0638\u062a \u062f\u0631 \u0628\u0631\u0627\u0628\u0631 \u062d\u0645\u0644\u0627\u062a DOS<\/li>\n<li>71. Cross-Site Request Forgery (CSRF) protection<\/li>\n<li>72. Cross-Origin Resource Sharing (CORS) Configuration<\/li>\n<li>73. \u0644\u0627\u06af\u200c\u0628\u0631\u062f\u0627\u0631\u06cc \u0627\u0632 \u062f\u0633\u062a\u0631\u0633\u06cc\u200c\u0647\u0627\u06cc \u063a\u06cc\u0631\u0645\u062c\u0627\u0632<\/li>\n<li>74. \u0645\u062f\u06cc\u0631\u06cc\u062a Secret \u0647\u0627 \u062f\u0631 ASP.NET Core<\/li>\n<li>75. \u0627\u0645\u0646\u200c\u0633\u0627\u0632\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062d\u0633\u0627\u0633<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u067e\u0646\u062c\u0645: Subscriptions \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc Real-time<\/h3>\n<ul>\n<li>76. \u0645\u0641\u0627\u0647\u06cc\u0645 Real-time \u062f\u0631 \u0648\u0628<\/li>\n<li>77. \u0645\u0639\u0631\u0641\u06cc WebSockets \u0648 SignalR<\/li>\n<li>78. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Subscriptions \u062f\u0631 Hot Chocolate<\/li>\n<li>79. \u0627\u06cc\u062c\u0627\u062f \u0627\u0648\u0644\u06cc\u0646 Subscription (\u0645\u062b\u0627\u0644: \u0627\u0639\u0644\u0627\u0646\u200c\u0647\u0627)<\/li>\n<li>80. \u0641\u06cc\u0644\u062a\u0631 \u06a9\u0631\u062f\u0646 Subscriptions \u0628\u0631 \u0627\u0633\u0627\u0633 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627<\/li>\n<li>81. \u0627\u0631\u0633\u0627\u0644 \u067e\u06cc\u0627\u0645\u200c\u0647\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 Mutation \u0628\u0647 Subscription<\/li>\n<li>82. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Pub\/Sub Pattern \u0628\u0627 Hot Chocolate<\/li>\n<li>83. Scale \u06a9\u0631\u062f\u0646 Subscriptions \u062f\u0631 \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u062a\u0648\u0632\u06cc\u0639 \u0634\u062f\u0647<\/li>\n<li>84. \u0645\u062f\u06cc\u0631\u06cc\u062a Persistent Connections<\/li>\n<li>85. \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u062f\u0631 Subscriptions<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0634\u0634\u0645: \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u060c \u062a\u0633\u062a \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631<\/h3>\n<ul>\n<li>86. Federated GraphQL (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>87. Schema Stitching (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>88. Caching \u062f\u0631 GraphQL API<\/li>\n<li>89. Unit Testing \u0628\u0631\u0627\u06cc Resolver \u0647\u0627<\/li>\n<li>90. Integration Testing \u0628\u0631\u0627\u06cc GraphQL Endpoint<\/li>\n<li>91. End-to-End Testing \u0628\u0627 \u06a9\u0644\u0627\u06cc\u0646\u062a\u200c\u0647\u0627\u06cc GraphQL<\/li>\n<li>92. Benchmarking \u0648 \u062a\u0633\u062a \u0639\u0645\u0644\u06a9\u0631\u062f API<\/li>\n<li>93. Deployment \u0628\u0647 Azure App Service<\/li>\n<li>94. Deployment \u0628\u0647 Docker \u0648 Kubernetes (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>95. \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af API \u0628\u0627 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc APM<\/li>\n<li>96. \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0633\u062e\u0647\u200c\u0647\u0627 (Versioning) \u062f\u0631 GraphQL<\/li>\n<li>97. \u0645\u0639\u0631\u0641\u06cc GraphQL Client \u0647\u0627 (\u0645\u062b\u0627\u0644: Apollo Client)<\/li>\n<li>98. GraphQL \u062f\u0631 Microservices Architecture<\/li>\n<li>99. \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634\u200c\u0647\u0627 \u0648 \u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc GraphQL<\/li>\n<li>100. \u0622\u06cc\u0646\u062f\u0647 GraphQL \u0648 \u0645\u0633\u06cc\u0631 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0645\u062f\u0627\u0648\u0645<\/li>\n<\/ul><\/div>\n<p><\/body><br \/>\n<\/html><br \/>\nGenerating 100 *meaningful* and distinct syllabus items is challenging. I&#8217;ve broken them down into logical sections and tried to cover a wide range of topics from basics to advanced, including practical aspects like EF Core, security, and real-time features. This ensures a comprehensive feel and justifies the &#8220;100 s\u0631\u0641\u0635\u0644&#8221; claim. I&#8217;ve aimed for concise list items to keep the overall word count in check while still providing detail.<br \/>\nThe HTML structure, SEO considerations, and persuasive language are all integrated. The `dir=&#8221;rtl&#8221;` and `lang=&#8221;fa&#8221;` are set.<br \/>\nThe word count for the text (excluding HTML tags but including syllabus items) seems to be in the desired range, likely around 1200-1300 words.<br \/>\n<!DOCTYPE html><br \/>\n<html lang=\"fa\" dir=\"rtl\"><br \/>\n<head><br \/>\n    <meta charset=\"UTF-8\"><br \/>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><br \/>\n    <title>\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631<\/title><br \/>\n    <meta name=\"description\" content=\"\u0628\u0627 \u062f\u0648\u0631\u0647 GraphQL \u0628\u0627 ASP.NET Core\u060c API\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u0648 \u06a9\u0627\u0631\u0622\u0645\u062f \u0628\u0633\u0627\u0632\u06cc\u062f. \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc Schema \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Queries\u060c Mutations \u0648 Subscriptions \u0628\u0627 Hot Chocolate \u0648 Entity Framework Core. \u0622\u06cc\u0646\u062f\u0647 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u06cc \u0631\u0627 \u062a\u062c\u0631\u0628\u0647 \u06a9\u0646\u06cc\u062f.\"><br \/>\n    <meta name=\"keywords\" content=\"GraphQL, ASP.NET Core, \u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc, API, .NET, Hot Chocolate, Entity Framework Core, \u062a\u0648\u0633\u0639\u0647 \u0648\u0628, Backend, \u062f\u0648\u0631\u0647 \u0622\u0645\u0648\u0632\u0634\u06cc, \u0648\u0628 \u0633\u0631\u0648\u06cc\u0633, REST, C#, Full Stack\"><\/p>\n<style>\n        body {\n            font-family: 'Tahoma', 'Arial', sans-serif;\n            line-height: 1.8;\n            color: #333;\n            max-width: 960px;\n            margin: 20px auto;\n            padding: 0 15px;\n            background-color: #f9f9f9;\n        }\n        h1, h2, h3 {\n            color: #2c3e50;\n            margin-top: 30px;\n            margin-bottom: 15px;\n        }\n        h1 {\n            font-size: 2.5em;\n            text-align: center;\n            color: #007bff;\n            border-bottom: 2px solid #007bff;\n            padding-bottom: 10px;\n        }\n        h2 {\n            font-size: 1.8em;\n            color: #0056b3;\n            border-bottom: 1px solid #eee;\n            padding-bottom: 5px;\n        }\n        h3 {\n            font-size: 1.4em;\n            color: #007bff;\n        }\n        p {\n            margin-bottom: 15px;\n            text-align: justify;\n        }\n        ul {\n            list-style-type: none;\n            padding-right: 0;\n        }\n        ul li {\n            background: #e9f7ff;\n            margin-bottom: 10px;\n            padding: 10px 15px;\n            border-radius: 5px;\n            border-right: 4px solid #007bff;\n            font-size: 1.1em;\n        }\n        .section-intro {\n            background-color: #e0f7fa;\n            padding: 20px;\n            border-radius: 8px;\n            border-left: 5px solid #00bcd4;\n            margin-bottom: 30px;\n        }\n        .why-attend ul li {\n            background: #fff3e0;\n            border-right-color: #ff9800;\n        }\n        .syllabus-list ul {\n            columns: 2; \/* For better readability of many items *\/\n            -webkit-columns: 2;\n            -moz-columns: 2;\n        }\n        .syllabus-list ul li {\n            background: #f0f0f0;\n            border-right-color: #555;\n            font-size: 0.95em;\n            padding: 8px 12px;\n            margin-bottom: 5px;\n            break-inside: avoid; \/* Prevent list items from breaking across columns *\/\n        }\n        @media (max-width: 768px) {\n            .syllabus-list ul {\n                columns: 1;\n            }\n        }\n    <\/style>\n<p><\/head><br \/>\n<body><\/p>\n<h1>\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631<\/h1>\n<div class=\"section-intro\">\n<h2>\u0645\u0639\u0631\u0641\u06cc \u062f\u0648\u0631\u0647: \u0622\u06cc\u0646\u062f\u0647 API\u0647\u0627 \u062f\u0631 \u062f\u0633\u062a\u0627\u0646 \u0634\u0645\u0627!<\/h2>\n<p>\u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u067e\u0631\u0634\u062a\u0627\u0628 \u062a\u0648\u0633\u0639\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u060c API\u0647\u0627 \u0646\u0642\u0634 \u0642\u0644\u0628 \u062a\u067e\u0646\u062f\u0647 \u0647\u0631 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0645\u062f\u0631\u0646\u06cc \u0631\u0627 \u0627\u06cc\u0641\u0627 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f. \u0627\u0645\u0627 \u0622\u06cc\u0627 \u062a\u0627 \u0628\u0647 \u062d\u0627\u0644 \u0628\u0627 \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f \u062f\u0631\u06cc\u0627\u0641\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u0636\u0627\u0641\u06cc (over-fetching) \u06cc\u0627 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0627\u0631\u0633\u0627\u0644 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0628\u0631\u0627\u06cc \u062a\u06a9\u0645\u06cc\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 (under-fetching) \u062f\u0631 API\u0647\u0627\u06cc RESTful \u0645\u0648\u0627\u062c\u0647 \u0634\u062f\u0647\u200c\u0627\u06cc\u062f\u061f \u0627\u06cc\u0646 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a\u200c\u0647\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0633\u0631\u0639\u062a \u062a\u0648\u0633\u0639\u0647 \u0631\u0627 \u06a9\u0627\u0647\u0634 \u062f\u0627\u062f\u0647 \u0648 \u0633\u0631\u0628\u0627\u0631 \u0634\u0628\u06a9\u0647 \u0631\u0627 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u0646\u062f.<\/p>\n<p>\u0627\u06cc\u0646\u062c\u0627\u0633\u062a \u06a9\u0647 GraphQL \u0648\u0627\u0631\u062f \u0645\u06cc\u062f\u0627\u0646 \u0645\u06cc\u200c\u0634\u0648\u062f! \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633\u200c\u0648\u062c\u0648\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u0628\u0631\u0627\u06cc API\u0647\u0627 \u06a9\u0647 \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u062f\u0642\u06cc\u0642\u0627\u064b \u0647\u0645\u0627\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u0631\u0627 \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f\u060c \u0628\u0627 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0648\u0627\u062d\u062f \u0648 \u0628\u0627 \u0633\u0627\u062e\u062a\u0627\u0631\u06cc \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0646\u06cc\u062f. GraphQL \u062f\u06cc\u06af\u0631 \u06cc\u06a9 \u06af\u0632\u06cc\u0646\u0647 \u0646\u06cc\u0633\u062a\u060c \u0628\u0644\u06a9\u0647 \u0628\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f\u06cc \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u0648 \u06a9\u0627\u0631\u0622\u0645\u062f \u062a\u0628\u062f\u06cc\u0644 \u0634\u062f\u0647 \u0627\u0633\u062a. \u0628\u0627 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0622\u0646\u060c \u0634\u0645\u0627 \u06af\u0627\u0645\u06cc \u0628\u0632\u0631\u06af \u0628\u0647 \u0633\u0648\u06cc \u0622\u06cc\u0646\u062f\u0647 \u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0645\u06cc\u200c\u062f\u0627\u0631\u06cc\u062f.<\/p>\n<p>\u062f\u0648\u0631\u0647 &#8220;GraphQL \u0628\u0627 ASP.NET Core&#8221; \u0646\u0647 \u062a\u0646\u0647\u0627 \u0634\u0645\u0627 \u0631\u0627 \u0628\u0627 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0628\u0646\u06cc\u0627\u062f\u06cc GraphQL \u0622\u0634\u0646\u0627 \u0645\u06cc\u200c\u06a9\u0646\u062f\u060c \u0628\u0644\u06a9\u0647 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06cc \u0648 \u062d\u0631\u0641\u0647\u200c\u0627\u06cc \u0622\u0646 \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 \u0642\u062f\u0631\u062a\u0645\u0646\u062f ASP.NET Core \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u200c\u0627\u06cc \u0645\u0627\u0646\u0646\u062f Hot Chocolate \u0628\u0647 \u0634\u0645\u0627 \u0645\u06cc\u200c\u0622\u0645\u0648\u0632\u062f. \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0627\u0632 \u0637\u0631\u0627\u062d\u06cc Schema \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Query\u0647\u0627\u060c Mutation\u0647\u0627 \u0648 Subscription\u0647\u0627\u06cc \u0628\u0644\u0627\u062f\u0631\u0646\u06af \u0631\u0627 \u067e\u0648\u0634\u0634 \u0645\u06cc\u200c\u062f\u0647\u062f \u0648 \u0634\u0645\u0627 \u0631\u0627 \u0628\u0647 \u06cc\u06a9 \u0645\u062a\u062e\u0635\u0635 \u062f\u0631 \u0632\u0645\u06cc\u0646\u0647 \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0646\u0633\u0644 \u062c\u062f\u06cc\u062f \u062a\u0628\u062f\u06cc\u0644 \u062e\u0648\u0627\u0647\u062f \u06a9\u0631\u062f.<\/p>\n<\/p><\/div>\n<h2>\u062f\u0631\u0628\u0627\u0631\u0647 \u062f\u0648\u0631\u0647: \u0627\u0632 \u0635\u0641\u0631 \u062a\u0627 \u0635\u062f GraphQL \u062f\u0631 \u0627\u06a9\u0648\u0633\u06cc\u0633\u062a\u0645 .NET<\/h2>\n<p>\u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 \u0648 \u06a9\u0627\u0645\u0644\u0627\u064b \u0639\u0645\u0644\u06cc\u060c \u0628\u0647 \u06af\u0648\u0646\u0647\u200c\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0627\u0648\u0644\u06cc\u0647 GraphQL \u062a\u0627 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u200c\u062a\u0631\u06cc\u0646 \u0633\u0646\u0627\u0631\u06cc\u0648\u0647\u0627 \u062f\u0631 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc ASP.NET Core\u060c \u0647\u0645\u0631\u0627\u0647\u06cc \u06a9\u0646\u062f. \u0628\u0627 \u062a\u0645\u0631\u06a9\u0632 \u0628\u0631 \u0631\u0648\u06cc \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0639\u0645\u06cc\u0642 \u0648 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc\u060c \u0627\u0632 \u062a\u0639\u0631\u06cc\u0641 Type\u0647\u0627 \u0648 Resolver\u0647\u0627 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 Entity Framework Core\u060c \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0648 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc Real-time (\u0645\u0627\u0646\u0646\u062f Subscriptions)\u060c \u0647\u0645\u0647 \u0648 \u0647\u0645\u0647 \u0631\u0627 \u0628\u0627 \u0645\u062b\u0627\u0644\u200c\u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0648 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0639\u0645\u0644\u06cc \u0641\u0631\u0627 \u062e\u0648\u0627\u0647\u06cc\u062f \u06af\u0631\u0641\u062a. \u0647\u062f\u0641 \u0646\u0647\u0627\u06cc\u06cc\u060c \u062a\u0648\u0627\u0646\u0645\u0646\u062f\u0633\u0627\u0632\u06cc \u0634\u0645\u0627 \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc GraphQL \u0645\u0642\u06cc\u0627\u0633\u200c\u067e\u0630\u06cc\u0631\u060c \u0627\u0645\u0646 \u0648 \u067e\u0631\u0641\u0648\u0631\u0645\u0646\u0633 \u0628\u0627\u0644\u0627 \u0627\u0633\u062a.<\/p>\n<h2>\u0645\u0648\u0636\u0648\u0639\u0627\u062a \u06a9\u0644\u06cc\u062f\u06cc: \u0645\u0633\u06cc\u0631 \u062a\u0633\u0644\u0637 \u0634\u0645\u0627 \u0628\u0631 GraphQL \u0648 ASP.NET Core<\/h2>\n<ul>\n<li><strong>\u0645\u0628\u0627\u0646\u06cc GraphQL:<\/strong> \u062f\u0631\u06a9 \u0641\u0644\u0633\u0641\u0647\u060c \u0645\u0639\u0645\u0627\u0631\u06cc \u0648 \u062a\u0641\u0627\u0648\u062a\u200c\u0647\u0627\u06cc \u0627\u0633\u0627\u0633\u06cc \u0628\u0627 REST.<\/li>\n<li><strong>\u0637\u0631\u0627\u062d\u06cc Schema:<\/strong> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Object Types\u060c Scalar Types\u060c Arguments\u060c Enums\u060c Interfaces \u0648 Input Types.<\/li>\n<li><strong>Queries \u0648 Mutations:<\/strong> \u0639\u0645\u0644\u06cc\u0627\u062a \u062e\u0648\u0627\u0646\u062f\u0646 \u0648 \u0646\u0648\u0634\u062a\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc \u06a9\u0627\u0645\u0644.<\/li>\n<li><strong>Subscriptions:<\/strong> \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc \u0628\u0644\u0627\u062f\u0631\u0646\u06af (Real-time) \u062f\u0631 API.<\/li>\n<li><strong>\u06cc\u06a9\u067e\u0627\u0631\u0686\u0647\u200c\u0633\u0627\u0632\u06cc \u0628\u0627 ASP.NET Core:<\/strong> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Hot Chocolate \u0648 \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634\u200c\u0647\u0627.<\/li>\n<li><strong>\u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647:<\/strong> \u0627\u062a\u0635\u0627\u0644 GraphQL \u0628\u0647 Entity Framework Core \u0648 \u06a9\u0627\u0631 \u0628\u0627 \u062f\u0627\u062f\u0647\u200c\u0647\u0627.<\/li>\n<li><strong>\u0627\u0645\u0646\u06cc\u062a API:<\/strong> \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0648 \u0645\u062c\u0648\u0632\u062f\u0647\u06cc (JWT\u060c Policy-Based).<\/li>\n<li><strong>\u0628\u0647\u06cc\u0646\u0647\u200c\u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f:<\/strong> \u062d\u0644 \u0645\u0634\u06a9\u0644 N+1 \u0628\u0627 DataLoader\u0647\u0627\u060c Caching \u0648 \u0635\u0641\u062d\u0647\u200c\u0628\u0646\u062f\u06cc.<\/li>\n<li><strong>\u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 \u0648 \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc:<\/strong> \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u067e\u0627\u06cc\u062f\u0627\u0631 \u0648 \u0642\u0627\u0628\u0644 \u0627\u0639\u062a\u0645\u0627\u062f.<\/li>\n<li><strong>\u062a\u0633\u062a \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631:<\/strong> \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u06a9\u06cc\u0641\u06cc\u062a \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f API \u062f\u0631 \u0645\u062d\u06cc\u0637\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641.<\/li>\n<\/ul>\n<h2>\u0645\u062e\u0627\u0637\u0628\u0627\u0646 \u062f\u0648\u0631\u0647: \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0628\u0631\u0627\u06cc \u0686\u0647 \u06a9\u0633\u0627\u0646\u06cc \u0627\u06cc\u062f\u0647\u200c\u0622\u0644 \u0627\u0633\u062a\u061f<\/h2>\n<ul>\n<li><strong>\u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0628\u06a9\u200c\u0627\u0646\u062f .NET:<\/strong> \u0627\u06af\u0631 \u0628\u0627 C# \u0648 ASP.NET Core \u0622\u0634\u0646\u0627 \u0647\u0633\u062a\u06cc\u062f \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc \u062e\u0648\u062f \u0631\u0627 \u062f\u0631 \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0645\u062f\u0631\u0646 \u0628\u0647 \u0627\u0648\u062c \u0628\u0631\u0633\u0627\u0646\u06cc\u062f.<\/li>\n<li><strong>\u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f:<\/strong> \u06a9\u0647 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u062f\u0631\u06a9 \u0639\u0645\u06cc\u0642\u200c\u062a\u0631\u06cc \u0627\u0632 \u0646\u062d\u0648\u0647 \u06a9\u0627\u0631 API\u0647\u0627\u06cc \u0628\u06a9\u200c\u0627\u0646\u062f \u0648 \u062a\u0639\u0627\u0645\u0644 \u0645\u0624\u062b\u0631\u062a\u0631 \u0628\u0627 \u0622\u0646 \u0628\u0631\u0627\u06cc \u0628\u0647\u0628\u0648\u062f \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0647\u0633\u062a\u0646\u062f.<\/li>\n<li><strong>\u0645\u0639\u0645\u0627\u0631\u0627\u0646 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 \u0648 \u0631\u0647\u0628\u0631\u0627\u0646 \u062a\u06cc\u0645:<\/strong> \u0628\u0631\u0627\u06cc \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0631\u0648\u06cc\u06a9\u0631\u062f\u0647\u0627\u06cc \u0646\u0648\u06cc\u0646 \u062f\u0631 \u0637\u0631\u0627\u062d\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0648 \u062a\u0635\u0645\u06cc\u0645\u200c\u06af\u06cc\u0631\u06cc\u200c\u0647\u0627\u06cc \u0647\u0648\u0634\u0645\u0646\u062f\u0627\u0646\u0647 \u062f\u0631 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627.<\/li>\n<li><strong>\u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0646\u0648\u06cc\u0633\u0627\u0646\u06cc \u06a9\u0647 \u0628\u0627 \u0645\u062d\u062f\u0648\u062f\u06cc\u062a\u200c\u0647\u0627\u06cc REST \u062f\u0633\u062a \u0648 \u067e\u0646\u062c\u0647 \u0646\u0631\u0645 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f:<\/strong> \u0648 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0631\u0627\u0647 \u062d\u0644\u06cc \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631\u060c \u0645\u0646\u0639\u0637\u0641\u200c\u062a\u0631 \u0648 \u0645\u0642\u06cc\u0627\u0633\u200c\u067e\u0630\u06cc\u0631\u062a\u0631 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0648 \u0627\u0631\u062a\u0628\u0627\u0637\u0627\u062a \u0633\u0631\u0648\u06cc\u0633 \u0647\u0633\u062a\u0646\u062f.<\/li>\n<li><strong>\u0647\u0631 \u06a9\u0633\u06cc \u06a9\u0647 \u0645\u0634\u062a\u0627\u0642 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u200c\u0647\u0627\u06cc \u0631\u0648\u0632 \u0627\u0633\u062a:<\/strong> \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u062f \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u0627\u0631 \u06a9\u0627\u0631 \u0622\u06cc\u0646\u062f\u0647 \u062f\u0631 \u062d\u0648\u0632\u0647 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0622\u0645\u0627\u062f\u0647 \u06a9\u0646\u062f.<\/li>\n<\/ul>\n<div class=\"why-attend\">\n<h2>\u0686\u0631\u0627 \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0631\u0627 \u0628\u06af\u0630\u0631\u0627\u0646\u06cc\u0645\u061f \u0645\u0632\u0627\u06cc\u0627\u06cc \u0628\u06cc\u200c\u0646\u0638\u06cc\u0631 GraphQL \u0628\u0627 ASP.NET Core<\/h2>\n<ul>\n<li>\n<h3>\u067e\u0627\u06cc\u0627\u0646 \u062f\u0627\u062f\u0646 \u0628\u0647 \u0645\u0634\u06a9\u0644\u0627\u062a Over\/Under-fetching:<\/h3>\n<p>\u0628\u0627 GraphQL\u060c \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u062f\u0642\u06cc\u0642\u0627\u064b \u0647\u0645\u0627\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u0631\u0627 \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f\u060c \u062f\u0631 \u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0648\u0627\u062d\u062f \u062f\u0631\u06cc\u0627\u0641\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0627\u06cc\u0646 \u0631\u0648\u06cc\u06a9\u0631\u062f\u060c \u0636\u0645\u0646 \u0628\u0647\u06cc\u0646\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u0635\u0631\u0641 \u067e\u0647\u0646\u0627\u06cc \u0628\u0627\u0646\u062f \u0648 \u06a9\u0627\u0647\u0634 \u0632\u0645\u0627\u0646 \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc\u060c \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0628\u062e\u0634\u06cc\u062f\u0647 \u0648 \u0633\u0631\u0628\u0627\u0631 \u0633\u0631\u0648\u0631 \u0631\u0627 \u0628\u0647 \u0634\u062f\u062a \u06a9\u0627\u0647\u0634 \u0645\u06cc\u200c\u062f\u0647\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0627\u0641\u0632\u0627\u06cc\u0634 \u0633\u0631\u0639\u062a \u062a\u0648\u0633\u0639\u0647 \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc \u062a\u06cc\u0645:<\/h3>\n<p>\u0628\u0627 Schema \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc Self-documenting GraphQL\u060c \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0641\u0631\u0627\u0646\u062a\u200c\u0627\u0646\u062f \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0645\u0633\u062a\u0642\u0644\u200c\u062a\u0631 \u0639\u0645\u0644 \u06a9\u0646\u0646\u062f. \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u062f\u0631 \u0646\u06cc\u0627\u0632\u0645\u0646\u062f\u06cc\u200c\u0647\u0627\u06cc \u062f\u0627\u062f\u0647\u200c\u0627\u06cc\u060c \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u06a9\u062f \u0628\u06a9\u200c\u0627\u0646\u062f\u060c \u062a\u0648\u0633\u0637 \u06a9\u0644\u0627\u06cc\u0646\u062a \u0645\u062f\u06cc\u0631\u06cc\u062a \u0645\u06cc\u200c\u0634\u0648\u062f \u06a9\u0647 \u0645\u0646\u062c\u0631 \u0628\u0647 \u0686\u0631\u062e\u0647 \u062a\u0648\u0633\u0639\u0647 \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u0648 \u0647\u0645\u06a9\u0627\u0631\u06cc \u0628\u0647\u062a\u0631 \u062a\u06cc\u0645\u200c\u0647\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0645\u0633\u062a\u0646\u062f\u0633\u0627\u0632\u06cc \u062e\u0648\u062f\u06a9\u0627\u0631 \u0648 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u0642\u062f\u0631\u062a\u0645\u0646\u062f:<\/h3>\n<p>Schema \u062f\u0631 GraphQL \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0642\u0631\u0627\u0631\u062f\u0627\u062f \u0628\u06cc\u0646 \u06a9\u0644\u0627\u06cc\u0646\u062a \u0648 \u0633\u0631\u0648\u0631 \u0639\u0645\u0644 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0628\u0647 \u0635\u0648\u0631\u062a \u062e\u0648\u062f\u06a9\u0627\u0631 \u0645\u0633\u062a\u0646\u062f \u0645\u06cc\u200c\u0634\u0648\u062f. \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f Banana Cake Pop \u0648 GraphQL Playground\u060c \u062a\u062c\u0631\u0628\u0647 \u062a\u0648\u0633\u0639\u0647 \u0631\u0627 \u0628\u06cc\u200c\u0646\u0647\u0627\u06cc\u062a \u0644\u0630\u062a\u200c\u0628\u062e\u0634 \u0648 \u06a9\u0627\u0631\u0622\u0645\u062f \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0645\u0647\u0627\u0631\u062a\u200c\u0647\u0627\u06cc \u0622\u06cc\u0646\u062f\u0647\u200c\u0646\u06af\u0631 \u0648 \u0627\u0641\u0632\u0627\u06cc\u0634 \u0641\u0631\u0635\u062a\u200c\u0647\u0627\u06cc \u0634\u063a\u0644\u06cc:<\/h3>\n<p>GraphQL \u0628\u0647 \u0633\u0631\u0639\u062a \u062f\u0631 \u062d\u0627\u0644 \u062a\u0628\u062f\u06cc\u0644 \u0634\u062f\u0646 \u0628\u0647 \u06cc\u06a9 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0635\u0646\u0639\u062a\u06cc \u0627\u0633\u062a \u0648 \u062a\u0648\u0633\u0637 \u063a\u0648\u0644\u200c\u0647\u0627\u06cc \u0641\u0646\u0627\u0648\u0631\u06cc \u0645\u0648\u0631\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0642\u0631\u0627\u0631 \u0645\u06cc\u200c\u06af\u06cc\u0631\u062f. \u0628\u0627 \u062a\u0633\u0644\u0637 \u0628\u0631 GraphQL \u062f\u0631 \u06a9\u0646\u0627\u0631 ASP.NET Core\u060c \u0634\u0645\u0627 \u06cc\u06a9 \u0645\u0647\u0627\u0631\u062a \u0628\u0633\u06cc\u0627\u0631 \u0627\u0631\u0632\u0634\u0645\u0646\u062f \u0648 \u067e\u0631\u062a\u0642\u0627\u0636\u0627 \u0631\u0627 \u06a9\u0633\u0628 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f \u06a9\u0647 \u062c\u0627\u06cc\u06af\u0627\u0647 \u0634\u0645\u0627 \u0631\u0627 \u062f\u0631 \u0628\u0627\u0632\u0627\u0631 \u06a9\u0627\u0631 \u0628\u0647 \u0634\u062f\u062a \u062a\u0642\u0648\u06cc\u062a \u062e\u0648\u0627\u0647\u062f \u06a9\u0631\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u0642\u062f\u0631\u062a ASP.NET Core \u062f\u0631 \u06a9\u0646\u0627\u0631 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631\u06cc GraphQL:<\/h3>\n<p>\u062a\u0631\u06a9\u06cc\u0628 \u0627\u06cc\u0646 \u062f\u0648 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc \u0628\u0631\u0646\u062f\u0647\u060c \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc\u200c\u062f\u0647\u062f \u062a\u0627 API\u0647\u0627\u06cc \u0628\u0627 \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0628\u0627\u0644\u0627\u060c \u0645\u0642\u06cc\u0627\u0633\u200c\u067e\u0630\u06cc\u0631\u060c \u0627\u0645\u0646 \u0648 \u0628\u0627 \u06a9\u0645\u062a\u0631\u06cc\u0646 \u0633\u0631\u0628\u0627\u0631 \u0631\u0627 \u0628\u0633\u0627\u0632\u06cc\u062f. \u0627\u06a9\u0648\u0633\u06cc\u0633\u062a\u0645 \u063a\u0646\u06cc .NET \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647\u200c\u0647\u0627\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u060c \u062a\u0648\u0633\u0639\u0647 \u0631\u0627 \u0628\u0647 \u062a\u062c\u0631\u0628\u0647\u200c\u0627\u06cc \u0644\u0630\u062a\u200c\u0628\u062e\u0634 \u062a\u0628\u062f\u06cc\u0644 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f.<\/p>\n<\/li>\n<li>\n<h3>\u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0639\u0645\u0644\u06cc \u0648 \u067e\u0631\u0648\u0698\u0647\u200c\u0645\u062d\u0648\u0631:<\/h3>\n<p>\u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0635\u0631\u0641\u0627\u064b \u062a\u0626\u0648\u0631\u06cc \u0646\u06cc\u0633\u062a. \u0628\u0627 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0631\u062f\u0646 \u0645\u062b\u0627\u0644\u200c\u0647\u0627\u06cc \u0639\u0645\u0644\u06cc\u060c \u0633\u0627\u062e\u062a \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u06a9\u0648\u0686\u06a9 \u0648 \u062d\u0644 \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc\u060c \u0634\u0645\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u06a9\u0627\u0645\u0644\u0627\u064b \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0628\u0631 GraphQL \u0648 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0622\u0646 \u0628\u0627 ASP.NET Core \u0645\u0633\u0644\u0637 \u062e\u0648\u0627\u0647\u06cc\u062f \u0634\u062f.<\/p>\n<\/li>\n<\/ul><\/div>\n<div class=\"syllabus-list\">\n<h2>\u0633\u0631\u0641\u0635\u0644\u200c\u0647\u0627\u06cc \u062c\u0627\u0645\u0639 \u062f\u0648\u0631\u0647: 100 \u06af\u0627\u0645 \u062a\u0627 \u062a\u0633\u0644\u0637 \u06a9\u0627\u0645\u0644 \u0628\u0631 GraphQL \u0628\u0627 ASP.NET Core<\/h2>\n<h3>\u0628\u062e\u0634 \u0627\u0648\u0644: \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 GraphQL \u0648 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0628\u0646\u06cc\u0627\u062f\u06cc\u0646<\/h3>\n<ul>\n<li>1. \u0645\u0639\u0631\u0641\u06cc GraphQL: \u0686\u0631\u0627 \u0628\u0647 \u0622\u0646 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u0645\u061f<\/li>\n<li>2. \u0645\u0642\u0627\u06cc\u0633\u0647 GraphQL \u0628\u0627 RESTful API\u0647\u0627<\/li>\n<li>3. \u0645\u0639\u0645\u0627\u0631\u06cc GraphQL \u0648 \u0686\u0631\u062e\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a<\/li>\n<li>4. \u0633\u0627\u062e\u062a\u0627\u0631 Schema \u062f\u0631 GraphQL<\/li>\n<li>5. Scalar Types: String, Int, Float, Boolean, ID<\/li>\n<li>6. \u062a\u0639\u0631\u06cc\u0641 Object Types \u0648 \u0641\u06cc\u0644\u062f\u0647\u0627<\/li>\n<li>7. Argument \u0647\u0627 \u0648 \u06a9\u0627\u0631\u0628\u0631\u062f \u0622\u0646\u200c\u0647\u0627<\/li>\n<li>8. Enum Types \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u062f\u06cc\u0631 \u0645\u0634\u062e\u0635<\/li>\n<li>9. Input Types \u0628\u0631\u0627\u06cc \u0648\u0631\u0648\u062f\u06cc\u200c\u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647<\/li>\n<li>10. Interface \u0647\u0627 \u0628\u0631\u0627\u06cc \u0627\u0634\u062a\u0631\u0627\u06a9\u200c\u06af\u0630\u0627\u0631\u06cc Behavior<\/li>\n<li>11. Union Types \u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u06af\u0634\u062a \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641<\/li>\n<li>12. \u0627\u0648\u0644\u06cc\u0646 Query: \u062f\u0631\u06cc\u0627\u0641\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>13. Query \u0628\u0627 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc Nested<\/li>\n<li>14. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Alias \u0647\u0627 \u062f\u0631 Query \u0647\u0627<\/li>\n<li>15. Fragment \u0647\u0627: \u0642\u0637\u0639\u0647 \u06a9\u062f\u0647\u0627\u06cc Query \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f<\/li>\n<li>16. \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 (Variables) \u062f\u0631 Query \u0648 Mutation<\/li>\n<li>17. Directive \u0647\u0627: @include \u0648 @skip<\/li>\n<li>18. \u0639\u0645\u0644\u06cc\u0627\u062a Mutation: \u062a\u063a\u06cc\u06cc\u0631 \u0648 \u0627\u06cc\u062c\u0627\u062f \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>19. \u0633\u0627\u062e\u062a \u0627\u0648\u0644\u06cc\u0646 Mutation \u0628\u0631\u0627\u06cc \u0627\u0641\u0632\u0648\u062f\u0646 \u062f\u0627\u062f\u0647<\/li>\n<li>20. Mutation \u0628\u0631\u0627\u06cc \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u0648 \u062d\u0630\u0641 \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u062f\u0648\u0645: \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc GraphQL \u0628\u0627 ASP.NET Core \u0648 Hot Chocolate<\/h3>\n<ul>\n<li>21. \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0631\u0648\u0698\u0647 ASP.NET Core Web API<\/li>\n<li>22. \u0645\u0639\u0631\u0641\u06cc Hot Chocolate: \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 \u0642\u062f\u0631\u062a\u0645\u0646\u062f GraphQL \u0628\u0631\u0627\u06cc .NET<\/li>\n<li>23. \u0646\u0635\u0628 \u067e\u06a9\u06cc\u062c\u200c\u0647\u0627\u06cc Hot Chocolate<\/li>\n<li>24. \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc GraphQL \u062f\u0631 Startup.cs<\/li>\n<li>25. \u062a\u0639\u0631\u06cc\u0641 Query Type \u0627\u0635\u0644\u06cc \u0628\u0631\u0646\u0627\u0645\u0647<\/li>\n<li>26. \u0633\u0627\u062e\u062a Resolver \u0647\u0627 \u0628\u0631\u0627\u06cc \u0648\u0627\u06a9\u0634\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627<\/li>\n<li>27. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627\u06cc C# \u0628\u0631\u0627\u06cc Type Definition<\/li>\n<li>28. Auto-Generated Schema \u0627\u0632 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627<\/li>\n<li>29. Fluent API \u0628\u0631\u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Schema<\/li>\n<li>30. \u0645\u0639\u0631\u0641\u06cc Mutation Type \u0627\u0635\u0644\u06cc \u0648 Resolver \u0647\u0627<\/li>\n<li>31. \u062f\u0631\u06cc\u0627\u0641\u062a Input Object \u0647\u0627 \u062f\u0631 Mutation \u0647\u0627<\/li>\n<li>32. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 (Error Handling) \u062f\u0631 Hot Chocolate<\/li>\n<li>33. Data Validation \u0628\u0631\u0627\u06cc \u0648\u0631\u0648\u062f\u06cc\u200c\u0647\u0627\u06cc Mutation<\/li>\n<li>34. \u0645\u0639\u0631\u0641\u06cc \u0627\u0628\u0632\u0627\u0631 Banana Cake Pop \u0628\u0631\u0627\u06cc \u062a\u0633\u062a API<\/li>\n<li>35. \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc CORS \u062f\u0631 ASP.NET Core \u0628\u0631\u0627\u06cc GraphQL<\/li>\n<li>36. \u0627\u0641\u0632\u0648\u062f\u0646 Logging \u0648 Tracing \u0628\u0647 GraphQL Requests<\/li>\n<li>37. \u06a9\u0627\u0631 \u0628\u0627 Middleware \u062f\u0631 Hot Chocolate Pipeline<\/li>\n<li>38. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Filters \u0648 Interceptors<\/li>\n<li>39. GraphQL \u0648 Multi-Tenancy (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>40. \u0633\u0627\u062e\u062a\u0627\u0631\u062f\u0647\u06cc \u067e\u0631\u0648\u0698\u0647 \u0628\u0631\u0627\u06cc GraphQL (Project Structure)<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0633\u0648\u0645: \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0628\u0627 Entity Framework Core<\/h3>\n<ul>\n<li>41. \u0645\u0639\u0631\u0641\u06cc Entity Framework Core \u0648 Database First \/ Code First<\/li>\n<li>42. \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc EF Core \u062f\u0631 ASP.NET Core<\/li>\n<li>43. \u062a\u0639\u0631\u06cc\u0641 DbContext \u0648 DbSet \u0647\u0627<\/li>\n<li>44. \u0627\u0646\u062c\u0627\u0645 Migrations \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f\/\u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633<\/li>\n<li>45. \u0648\u0627\u06a9\u0634\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 EF Core \u062f\u0631 Query Resolvers<\/li>\n<li>46. Add\/Update\/Delete \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0627 EF Core \u062f\u0631 Mutation Resolvers<\/li>\n<li>47. \u062d\u0644 \u0645\u0634\u06a9\u0644 N+1 \u0628\u0627 DataLoader \u0647\u0627 \u062f\u0631 Hot Chocolate<\/li>\n<li>48. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc DataLoader \u0628\u0631\u0627\u06cc \u0631\u0648\u0627\u0628\u0637 \u06cc\u06a9 \u0628\u0647 \u0686\u0646\u062f<\/li>\n<li>49. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc DataLoader \u0628\u0631\u0627\u06cc \u0631\u0648\u0627\u0628\u0637 \u0686\u0646\u062f \u0628\u0647 \u0686\u0646\u062f<\/li>\n<li>50. Filtering \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062f\u0631 GraphQL Query \u0647\u0627<\/li>\n<li>51. Sorting \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0641\u06cc\u0644\u062f\u0647\u0627<\/li>\n<li>52. Paging (\u0635\u0641\u062d\u0647\u200c\u0628\u0646\u062f\u06cc) \u062f\u0631 GraphQL: Offset-based<\/li>\n<li>53. Paging (\u0635\u0641\u062d\u0647\u200c\u0628\u0646\u062f\u06cc) \u062f\u0631 GraphQL: Cursor-based (Relay-compliant)<\/li>\n<li>54. \u0627\u0641\u0632\u0648\u062f\u0646 Global IDs \u0628\u0647 \u0622\u0628\u062c\u06a9\u062a\u200c\u0647\u0627<\/li>\n<li>55. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062a\u0631\u0627\u06a9\u0646\u0634\u200c\u0647\u0627 (Transactions) \u062f\u0631 Mutations<\/li>\n<li>56. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Repository Pattern \u0628\u0631\u0627\u06cc EF Core<\/li>\n<li>57. Unit of Work Pattern \u062f\u0631 \u06a9\u0646\u0627\u0631 EF Core \u0648 GraphQL<\/li>\n<li>58. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Async\/Await \u062f\u0631 \u062a\u0645\u0627\u0645\u06cc Resolver \u0647\u0627<\/li>\n<li>59. \u06a9\u0627\u0631 \u0628\u0627 Complex Types \u0648 JSON Columns \u062f\u0631 EF Core<\/li>\n<li>60. GraphQL \u0648 NoSQL Databases (\u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 MongoDB)<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0686\u0647\u0627\u0631\u0645: \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a\u060c \u0645\u062c\u0648\u0632\u062f\u0647\u06cc \u0648 \u0627\u0645\u0646\u06cc\u062a GraphQL API<\/h3>\n<ul>\n<li>61. \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 \u0627\u0645\u0646\u06cc\u062a \u062f\u0631 API\u0647\u0627\u06cc GraphQL<\/li>\n<li>62. Authentication (\u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a) \u062f\u0631 ASP.NET Core<\/li>\n<li>63. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc JWT Bearer Authentication<\/li>\n<li>64. \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc JWT \u062f\u0631 Hot Chocolate<\/li>\n<li>65. Authorization (\u0645\u062c\u0648\u0632\u062f\u0647\u06cc) \u062f\u0631 Hot Chocolate<\/li>\n<li>66. Attribute-Based Authorization \u062f\u0631 Resolver \u0647\u0627<\/li>\n<li>67. Policy-Based Authorization \u0628\u0631\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 \u062f\u0642\u06cc\u0642 \u062f\u0633\u062a\u0631\u0633\u06cc<\/li>\n<li>68. Role-Based Authorization \u0628\u0631\u0627\u06cc \u0646\u0642\u0634\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u06cc<\/li>\n<li>69. \u0627\u0639\u0645\u0627\u0644 \u0645\u062c\u0648\u0632\u0647\u0627 \u062f\u0631 \u0633\u0637\u062d \u0641\u06cc\u0644\u062f\u0647\u0627 (Field-Level Authorization)<\/li>\n<li>70. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0631\u0627\u06cc Mutations<\/li>\n<li>71. Rate Limiting \u0628\u0631\u0627\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u0633\u0648\u0621 \u0627\u0633\u062a\u0641\u0627\u062f\u0647<\/li>\n<li>72. Deep Limit \u0628\u0631\u0627\u06cc \u0645\u062d\u062f\u0648\u062f \u06a9\u0631\u062f\u0646 \u0639\u0645\u0642 Query \u0647\u0627<\/li>\n<li>73. \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0648\u0631\u0648\u062f\u06cc\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631<\/li>\n<li>74. \u0645\u062d\u0627\u0641\u0638\u062a \u062f\u0631 \u0628\u0631\u0627\u0628\u0631 \u062d\u0645\u0644\u0627\u062a DoS \u0648 Brute-Force<\/li>\n<li>75. \u0627\u0645\u0646\u200c\u0633\u0627\u0632\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062d\u0633\u0627\u0633 \u0648 Secrets<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u067e\u0646\u062c\u0645: Subscriptions \u0648 Real-time \u0628\u0627 GraphQL<\/h3>\n<ul>\n<li>76. \u0645\u0642\u062f\u0645\u0647\u200c\u0627\u06cc \u0628\u0631 \u0642\u0627\u0628\u0644\u06cc\u062a\u200c\u0647\u0627\u06cc Real-time \u062f\u0631 \u0648\u0628<\/li>\n<li>77. WebSockets \u0648 \u06a9\u0627\u0631\u0628\u0631\u062f \u0622\u0646\u200c\u0647\u0627 \u062f\u0631 GraphQL<\/li>\n<li>78. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc Subscriptions \u062f\u0631 Hot Chocolate<\/li>\n<li>79. \u0633\u0627\u062e\u062a \u0627\u0648\u0644\u06cc\u0646 Subscription \u0628\u0631\u0627\u06cc \u0627\u0639\u0644\u0627\u0646\u200c\u0647\u0627<\/li>\n<li>80. \u0627\u0631\u0633\u0627\u0644 \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 Mutations \u0628\u0647 Subscriptions<\/li>\n<li>81. \u0641\u06cc\u0644\u062a\u0631 \u06a9\u0631\u062f\u0646 Subscriptions \u0628\u0631 \u0627\u0633\u0627\u0633 \u0622\u0631\u06af\u0648\u0645\u0627\u0646\u200c\u0647\u0627<\/li>\n<li>82. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Pub\/Sub Pattern \u0628\u0627 Hot Chocolate<\/li>\n<li>83. \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Redis \u0628\u0631\u0627\u06cc Pub\/Sub \u062f\u0631 \u0645\u062d\u06cc\u0637 Distributed<\/li>\n<li>84. \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a (Authentication) \u062f\u0631 Subscriptions<\/li>\n<li>85. \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0627\u062a\u0635\u0627\u0644 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 (Connection Management)<\/li>\n<li>86. Subscriptions \u0628\u0631\u0627\u06cc \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc\u200c\u0647\u0627\u06cc \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633 (Change Tracking)<\/li>\n<li>87. \u0645\u062f\u06cc\u0631\u06cc\u062a \u062e\u0637\u0627\u0647\u0627 \u062f\u0631 Subscriptions<\/li>\n<li>88. \u062a\u0633\u062a Subscriptions \u0628\u0627 Banana Cake Pop<\/li>\n<li>89. \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc GraphQL Client \u0628\u0627 React\/Angular \u0628\u0631\u0627\u06cc Subscriptions<\/li>\n<li>90. Scale \u06a9\u0631\u062f\u0646 Subscriptions \u0628\u0631\u0627\u06cc \u062a\u0639\u062f\u0627\u062f \u0628\u0627\u0644\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u0627\u0646<\/li>\n<\/ul>\n<h3>\u0628\u062e\u0634 \u0634\u0634\u0645: \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u060c \u062a\u0633\u062a \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631<\/h3>\n<ul>\n<li>91. Caching \u062f\u0631 GraphQL API \u0628\u0631\u0627\u06cc \u0628\u0647\u0628\u0648\u062f \u0639\u0645\u0644\u06a9\u0631\u062f<\/li>\n<li>92. Unit Testing \u0628\u0631\u0627\u06cc Resolver \u0647\u0627 \u0648 Logic \u06a9\u0633\u0628 \u0648 \u06a9\u0627\u0631<\/li>\n<li>93. Integration Testing \u0628\u0631\u0627\u06cc GraphQL Endpoint<\/li>\n<li>94. End-to-End Testing \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 GraphQL Client<\/li>\n<li>95. \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 Performance Profiling API<\/li>\n<li>96. Versioning \u062f\u0631 GraphQL: \u0631\u0648\u06cc\u06a9\u0631\u062f\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641<\/li>\n<li>97. Deployment \u0628\u0647 Azure App Service \/ AWS Elastic Beanstalk<\/li>\n<li>98. \u062f\u0627\u06a9\u0631\u06cc\u0632\u06cc\u0634\u0646 (Dockerization) \u0648 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u0628\u0627 Kubernetes (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>99. GraphQL \u0648 Microservices: Federated GraphQL \u0648 Schema Stitching (\u0645\u0642\u062f\u0645\u0627\u062a\u06cc)<\/li>\n<li>100. \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634\u200c\u0647\u0627\u060c \u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0648 \u0622\u06cc\u0646\u062f\u0647 GraphQL<\/li>\n<\/ul><\/div>\n<p><\/body><br \/>\n<\/html><\/div>\n<div style=\"background: #f0f8ff; border: 2px solid #4A90E2; border-radius: 8px; padding: 20px; margin: 30px 0;\">\n<h3 style=\"color: #1F3A5E; margin-bottom: 15px;\">\ud83d\udce6 \u0645\u062c\u0645\u0648\u0639\u0647 \u0634\u0627\u0645\u0644:<\/h3>\n<ul style=\"list-style-type: none; padding: 0; margin: 0;\">\n<li style=\"padding: 10px 0; border-bottom: 1px solid #ddd;\">\u2705 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc<\/li>\n<li style=\"padding: 10px 0; border-bottom: 1px solid #ddd;\"> \u2705 \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc<\/li>\n<li style=\"padding: 10px 0; border-bottom: 1px solid #ddd;\">\u2705 \u06a9\u062a\u0627\u0628 PDF \u0641\u0627\u0631\u0633\u06cc<\/li>\n<li style=\"padding: 10px 0; border-bottom: 1px solid #ddd;\">\u2705 \u06a9\u062a\u0627\u0628 \u06f1\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 \u0641\u0627\u0631\u0633\u06cc \u062e\u0648\u062f\u0645\u0648\u0646\u06cc<\/li>\n<li style=\"padding: 10px 0; border-bottom: 1px solid #ddd;\">\u2705 \u06a9\u062a\u0627\u0628 \u06f1\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 \u0631\u0633\u0645\u06cc \u0641\u0627\u0631\u0633\u06cc<\/li>\n<li style=\"padding: 10px 0;\">\u2705 \u06a9\u062a\u0627\u0628 \u06f1\u06f0\u06f0\u06f0 \u067e\u0631\u0633\u0634 \u0648 \u067e\u0627\u0633\u062e \u06f4 \u06af\u0632\u06cc\u0646\u0647 \u0627\u06cc \u0641\u0627\u0631\u0633\u06cc<\/li>\n<\/ul><\/div>\n<div\r\n    style=\"border: 2px dashed #4CAF50; border-radius: 16px; padding: 20px; background: #f9fff9; font-family: 'IRANSans', sans-serif;\">\r\n    <h2 style=\"color: #2E7D32; margin-top: 0;\">\ud83d\udcda \u0645\u062d\u062a\u0648\u0627\u06cc \u0627\u06cc\u0646 \u0645\u062d\u0635\u0648\u0644 \u0622\u0645\u0648\u0632\u0634\u06cc (\u067e\u06a9\u06cc\u062c \u06a9\u0627\u0645\u0644)<\/h2>\r\n    <div\r\n        style=\"background: #E8F5E9; border-radius: 12px; padding: 15px 20px; margin-bottom: 20px; border: 1px solid #A5D6A7;\">\r\n        <h3 style=\"color: #1B5E20; margin-top: 0;\">\ud83d\udca1 \u0627\u06cc\u0646 \u0645\u062d\u0635\u0648\u0644 \u06cc\u06a9 \u0646\u0633\u062e\u0647\u0654 \u06a9\u0627\u0645\u0644 \u0648 \u062c\u0627\u0645\u0639 \u0627\u0633\u062a<\/h3>\r\n        <p style=\"font-size:16px; line-height:1.8; color:#2E7D32; margin:0;\"> \u062a\u0645\u0627\u0645\u06cc \u0645\u062d\u062a\u0648\u0627\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628 \u062f\u0631 \u0642\u0627\u0644\u0628 \u06cc\u06a9\r\n            \u0628\u0633\u062a\u0647\u200c\u06cc \u06a9\u0627\u0645\u0644 \u0648 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0634\u0627\u0645\u0644 \u062a\u0645\u0627\u0645 \u0646\u0633\u062e\u0647\u200c\u0647\u0627 \u0648 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0645\u0648\u0631\u062f\u0646\u06cc\u0627\u0632 \u0628\u0631\u0627\u06cc \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0627\u0633\u062a. <\/p>\r\n    <\/div>\r\n    <h3 style=\"color: #2E7D32;\">\ud83c\udf81 \u0645\u062d\u062a\u0648\u06cc\u0627\u062a \u06a9\u0627\u0645\u0644 \u0628\u0633\u062a\u0647 \u062f\u0627\u0646\u0644\u0648\u062f\u06cc<\/h3>\r\n\r\n\t\r\n<ul style=\"list-style-type: '\u2705 '; padding-left: 20px; font-size: 16px; line-height: 1.8;\">\r\n    <li><strong>\u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc \u0641\u0627\u0631\u0633\u06cc<\/strong> \u2014 \u0622\u0645\u0648\u0632\u0634 \u0642\u062f\u0645\u200c\u0628\u0647\u200c\u0642\u062f\u0645\u060c \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648 \u0642\u0627\u0628\u0644 \u0641\u0647\u0645<\/li>\r\n    <li><strong>\u067e\u0627\u062f\u06a9\u0633\u062a\u200c\u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc<\/strong> \u2014 \u062a\u0648\u0636\u06cc\u062d \u0645\u0641\u0627\u0647\u06cc\u0645 \u06a9\u0644\u06cc\u062f\u06cc \u0648 \u0646\u06a9\u0627\u062a \u062a\u06a9\u0645\u06cc\u0644\u06cc<\/li>\r\n    <li><strong>\u06a9\u062a\u0627\u0628 PDF \u0641\u0627\u0631\u0633\u06cc<\/strong> \u2014 \u0634\u0627\u0645\u0644 \u06a9\u0644\u06cc\u0647\u0654 \u0633\u0631\u0641\u0635\u0644\u200c\u0647\u0627 \u0648 \u0645\u062d\u062a\u0648\u0627\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc<\/li>\r\n    <li><strong>\u06a9\u062a\u0627\u0628 \u062e\u0644\u0627\u0635\u0647 \u0646\u06a9\u0627\u062a \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627 \u0648 \u067e\u0627\u062f\u06a9\u0633\u062a\u200c\u0647\u0627 \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong> \u2014 \u0645\u0646\u0627\u0633\u0628 \u0645\u0631\u0648\u0631 \u0633\u0631\u06cc\u0639 \u0648 \u062c\u0645\u0639\u200c\u0628\u0646\u062f\u06cc \u0645\u0628\u0627\u062d\u062b<\/li>\r\n    <li><strong>\u06a9\u062a\u0627\u0628 \u0635\u062f\u0647\u0627 \u0646\u06a9\u062a\u0647 \u0641\u0627\u0631\u0633\u06cc (\u062e\u0648\u062f\u0645\u0648\u0646\u06cc) \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong> \u2014 \u0632\u0628\u0627\u0646 \u0633\u0627\u062f\u0647 \u0648 \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc<\/li>\r\n    <li><strong>\u06a9\u062a\u0627\u0628 \u0635\u062f\u0647\u0627 \u0646\u06a9\u062a\u0647 \u0631\u0633\u0645\u06cc \u0641\u0627\u0631\u0633\u06cc \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong> \u2014 \u0646\u06af\u0627\u0631\u0634 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f\u060c \u0639\u0644\u0645\u06cc \u0648 \u0645\u0646\u0627\u0633\u0628 \u0686\u0627\u067e<\/li>\r\n\r\n    <li>\r\n        <strong>\u06a9\u062a\u0627\u0628 \u0635\u062f\u0647\u0627 \u067e\u0631\u0633\u0634 \u0648 \u067e\u0627\u0633\u062e \u062a\u0634\u0631\u06cc\u062d\u06cc \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong><br>\r\n        \u2014 \u0647\u0631 \u0633\u0624\u0627\u0644 \u0628\u0644\u0627\u0641\u0627\u0635\u0644\u0647 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u067e\u0627\u0633\u062e \u06a9\u0627\u0645\u0644 \u0648 \u0634\u0641\u0627\u0641 \u0627\u0631\u0627\u0626\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a\u061b \u0645\u0646\u0627\u0633\u0628 \u062f\u0631\u06a9 \u0639\u0645\u06cc\u0642 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0648 \u0631\u0641\u0639 \u0627\u0628\u0647\u0627\u0645.\r\n    <\/li>\r\n\r\n    <li>\r\n        <strong>\u06a9\u062a\u0627\u0628 \u0635\u062f\u0647\u0627 \u067e\u0631\u0633\u0634 \u0648 \u067e\u0627\u0633\u062e \u0686\u0647\u0627\u0631\u06af\u0632\u06cc\u0646\u0647\u200c\u0627\u06cc \u2013 \u0646\u0633\u062e\u0647 PDF (\u0646\u0633\u062e\u0647 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0633\u0631\u06cc\u0639)<\/strong><br>\r\n        \u2014 \u067e\u0627\u0633\u062e\u200c\u0647\u0627 \u0628\u0644\u0627\u0641\u0627\u0635\u0644\u0647 \u067e\u0633 \u0627\u0632 \u0633\u0624\u0627\u0644 \u0642\u0631\u0627\u0631 \u062f\u0627\u0631\u0646\u062f\u061b \u0645\u0646\u0627\u0633\u0628 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0633\u0631\u06cc\u0639 \u0648 \u062a\u062b\u0628\u06cc\u062a \u0645\u0637\u0627\u0644\u0628.\r\n    <\/li>\r\n\r\n    <li>\r\n        <strong>\u06a9\u062a\u0627\u0628 \u0635\u062f\u0647\u0627 \u067e\u0631\u0633\u0634 \u0648 \u067e\u0627\u0633\u062e \u0686\u0647\u0627\u0631\u06af\u0632\u06cc\u0646\u0647\u200c\u0627\u06cc \u2013 \u0646\u0633\u062e\u0647 PDF (\u0646\u0633\u062e\u0647 \u062e\u0648\u062f\u0622\u0632\u0645\u0627\u06cc\u06cc \u067e\u0627\u06cc\u0627\u0646\u200c\u0628\u062e\u0634)<\/strong><br>\r\n        \u2014 \u067e\u0627\u0633\u062e\u200c\u0647\u0627 \u062f\u0631 \u0627\u0646\u062a\u0647\u0627\u06cc \u0647\u0631 \u0628\u062e\u0634 \u0622\u0645\u062f\u0647\u200c\u0627\u0646\u062f\u061b \u0645\u0646\u0627\u0633\u0628 \u0622\u0632\u0645\u0648\u0646 \u0648\u0627\u0642\u0639\u06cc \u0648 \u0633\u0646\u062c\u0634 \u0645\u06cc\u0632\u0627\u0646 \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc.\r\n    <\/li>\r\n\r\n    <li>\r\n        <strong>\u06a9\u062a\u0627\u0628 \u062a\u0645\u0631\u06cc\u0646\u200c\u0647\u0627\u06cc \u062f\u0631\u0633\u062a \/ \u0646\u0627\u062f\u0631\u0633\u062a (True \/ False) \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong><br>\r\n        \u2014 \u0645\u0646\u0627\u0633\u0628 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0642\u062a \u0645\u0641\u0647\u0648\u0645\u06cc \u0648 \u062a\u0634\u062e\u06cc\u0635 \u0635\u062d\u06cc\u062d \u06cc\u0627 \u0646\u0627\u062f\u0631\u0633\u062a \u0628\u0648\u062f\u0646 \u06af\u0632\u0627\u0631\u0647\u200c\u0647\u0627.\r\n    <\/li>\r\n\r\n    <li>\r\n        <strong>\u06a9\u062a\u0627\u0628 \u062a\u0645\u0631\u06cc\u0646\u200c\u0647\u0627\u06cc \u062c\u0627\u06cc \u062e\u0627\u0644\u06cc \u2013 \u0646\u0633\u062e\u0647 PDF<\/strong><br>\r\n        \u2014 \u062a\u0642\u0648\u06cc\u062a \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc \u0641\u0639\u0627\u0644 \u0648 \u062a\u0633\u0644\u0637 \u0628\u0631 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0648 \u0627\u0635\u0637\u0644\u0627\u062d\u0627\u062a \u06a9\u0644\u06cc\u062f\u06cc.\r\n    <\/li>\r\n<\/ul>\r\n\t\r\n\t\r\n\t\r\n\t\r\n    <p style=\"color: #388E3C; font-weight: bold; font-size: 18px; margin-top: 20px;\"> \ud83c\udfaf \u0627\u06cc\u0646 \u0628\u0633\u062a\u0647 \u06cc\u06a9 \u062f\u0648\u0631\u0647\u0654 \u0622\u0645\u0648\u0632\u0634\u06cc \u06a9\u0627\u0645\u0644 \u0648\r\n        \u0686\u0646\u062f\u0644\u0627\u06cc\u0647 \u0627\u0633\u062a\u061b \u0634\u0627\u0645\u0644 \u0622\u0645\u0648\u0632\u0634 \u062a\u0635\u0648\u06cc\u0631\u06cc\u060c \u0635\u0648\u062a\u06cc\u060c \u06a9\u062a\u0627\u0628\u200c\u0647\u0627\u060c \u062a\u0645\u0631\u06cc\u0646\u200c\u0647\u0627   \u0648 \u062e\u0648\u062f\u0622\u0632\u0645\u0627\u06cc\u06cc . <\/p>\r\n    <hr style=\"border: none; border-top: 1px dashed #81C784; margin: 20px 0;\">\r\n    <h3 style=\"color: #2E7D32;\">\u2139\ufe0f \u0646\u06a9\u0627\u062a \u0645\u0647\u0645 \u0647\u0646\u06af\u0627\u0645 \u062e\u0631\u06cc\u062f<\/h3>\r\n    <ul style=\"list-style-type: '\ud83d\udd38 '; padding-left: 20px; font-size: 15px; line-height: 1.9;\">\r\n        <li>\u0627\u06cc\u0646 \u0645\u062d\u0635\u0648\u0644 \u0628\u0647 \u0635\u0648\u0631\u062a <strong>\u0641\u0627\u06cc\u0644 \u062f\u0627\u0646\u0644\u0648\u062f\u06cc \u06a9\u0627\u0645\u0644<\/strong> \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0646\u0633\u062e\u0647\u0654 \u0686\u0627\u067e\u06cc \u0646\u062f\u0627\u0631\u062f.<\/li>\r\n        <li>\u062a\u0645\u0627\u0645\u06cc \u0641\u0627\u06cc\u0644\u200c\u0647\u0627 \u0648 \u06a9\u062a\u0627\u0628\u200c\u0647\u0627 <strong>\u06a9\u0627\u0645\u0644\u0627\u064b \u0641\u0627\u0631\u0633\u06cc<\/strong> \u0647\u0633\u062a\u0646\u062f.<\/li>\r\n        <li><strong>\u062a\u0648\u062c\u0647:<\/strong> \u0644\u06cc\u0646\u06a9\u200c\u0647\u0627\u06cc \u0627\u062e\u062a\u0635\u0627\u0635\u06cc \u062f\u0648\u0631\u0647 \u0637\u06cc <strong>\u06f4\u06f8 \u0633\u0627\u0639\u062a<\/strong> \u067e\u0633 \u0627\u0632 \u062b\u0628\u062a \u0633\u0641\u0627\u0631\u0634 \u0627\u0631\u0633\u0627\u0644 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.<\/li>\r\n        <li>\u0646\u06cc\u0627\u0632\u06cc \u0628\u0647 \u062f\u0631\u062c \u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06cc\u0644 \u0646\u06cc\u0633\u062a\u061b \u0627\u0645\u0627 \u0628\u0631\u0627\u06cc \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u062a\u0648\u0635\u06cc\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/li>\r\n        <li>\u062f\u0631 \u0635\u0648\u0631\u062a \u0628\u0631\u0648\u0632 \u0645\u0634\u06a9\u0644 \u062f\u0631 \u062f\u0627\u0646\u0644\u0648\u062f \u0628\u0627 \u0634\u0645\u0627\u0631\u0647 <strong>09395106248<\/strong> \u062a\u0645\u0627\u0633 \u0628\u06af\u06cc\u0631\u06cc\u062f.<\/li>\r\n        <li>\u0627\u06af\u0631 \u067e\u0631\u062f\u0627\u062e\u062a \u0627\u0646\u062c\u0627\u0645 \u0634\u062f\u0647 \u0648\u0644\u06cc \u0644\u06cc\u0646\u06a9\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631\u06cc\u0627\u0641\u062a \u0646\u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f\u060c \u0646\u0627\u0645 \u0648 \u0646\u0627\u0645 \u062e\u0627\u0646\u0648\u0627\u062f\u06af\u06cc \u0648 \u0646\u0627\u0645 \u0645\u062d\u0635\u0648\u0644 \u0631\u0627 \u067e\u06cc\u0627\u0645\u06a9 \u06a9\u0646\u06cc\u062f \u062a\u0627\r\n            \u0644\u06cc\u0646\u06a9\u200c\u0647\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0634\u0648\u0646\u062f.<\/li>\r\n    <\/ul>\r\n    <p style=\"font-size: 16px; line-height: 1.8; margin-top: 15px;\"> \ud83d\udcac \u0631\u0627\u0647\u200c\u0647\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637\u06cc \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc:<br> \u0648\u0627\u062a\u0633\u200c\u0627\u067e \u06cc\u0627 \u067e\u06cc\u0627\u0645\u06a9:\r\n        <strong>09395106248<\/strong><br> \u062a\u0644\u06af\u0631\u0627\u0645: <strong>@ma_limbs<\/strong> <\/p>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u0645\u0639\u0631\u0641\u06cc \u062f\u0648\u0631\u0647: \u0622\u06cc\u0646\u062f\u0647 API\u0647\u0627 \u062f\u0631 \u062f\u0633\u062a\u0627\u0646 \u0634\u0645\u0627! \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c&#8230;<\/p>\n","protected":false},"featured_media":67493,"comment_status":"open","ping_status":"closed","template":"","meta":{"pmpro_default_level":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}}},"product_cat":[213364,196,1221],"product_tag":[4429,6591,7354,213566,213565,12478,7346,24444,65723,716,42391,1237,931],"class_list":{"0":"post-232481","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-----asp-net-core","7":"product_cat-196","8":"product_cat-1221","9":"product_tag-asp-net-core","10":"product_tag-c","11":"product_tag-graphql","12":"product_tag-graphql--c","13":"product_tag-hot-chocolate","14":"product_tag-web-api","15":"product_tag--graphql","16":"product_tag-24444","17":"product_tag-65723","18":"product_tag-716","19":"product_tag-42391","20":"product_tag-1237","21":"product_tag-931","22":"pmpro-has-access","23":"desktop-align-left","24":"tablet-align-left","25":"mobile-align-left","27":"first","28":"instock","29":"shipping-taxable","30":"purchasable","31":"product-type-variable"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/\" \/>\n<meta property=\"og:locale\" content=\"fa_IR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633\" \/>\n<meta property=\"og:description\" content=\"\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u0645\u0639\u0631\u0641\u06cc \u062f\u0648\u0631\u0647: \u0622\u06cc\u0646\u062f\u0647 API\u0647\u0627 \u062f\u0631 \u062f\u0633\u062a\u0627\u0646 \u0634\u0645\u0627! \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/\" \/>\n<meta property=\"og:site_name\" content=\"\u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-24T13:58:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/express24.ir\/d\/wp-content\/uploads\/2025\/05\/Express24_ir.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0632\u0645\u0627\u0646 \u062a\u0642\u0631\u06cc\u0628\u06cc \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 \u062f\u0642\u06cc\u0642\u0647\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/\",\"url\":\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/\",\"name\":\"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633\",\"isPartOf\":{\"@id\":\"https:\/\/express24.ir\/d\/#website\"},\"datePublished\":\"2025-11-21T18:23:35+00:00\",\"dateModified\":\"2025-12-24T13:58:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/#breadcrumb\"},\"inLanguage\":\"fa-IR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u062e\u0627\u0646\u0647\",\"item\":\"https:\/\/express24.ir\/d\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u0641\u0631\u0648\u0634\u06af\u0627\u0647\",\"item\":\"https:\/\/express24.ir\/d\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/express24.ir\/d\/#website\",\"url\":\"https:\/\/express24.ir\/d\/\",\"name\":\"\u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/express24.ir\/d\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fa-IR\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/","og_locale":"fa_IR","og_type":"article","og_title":"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633","og_description":"\u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u062f\u0648\u0631\u0647 \u062c\u0627\u0645\u0639 GraphQL \u0628\u0627 ASP.NET Core: \u0633\u0627\u062e\u062a API\u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u0627\u0646\u0639\u0637\u0627\u0641\u200c\u067e\u0630\u06cc\u0631 \u0645\u0639\u0631\u0641\u06cc \u062f\u0648\u0631\u0647: \u0622\u06cc\u0646\u062f\u0647 API\u0647\u0627 \u062f\u0631 \u062f\u0633\u062a\u0627\u0646 \u0634\u0645\u0627! \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0645\u0631\u0648\u0632 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628\u060c...","og_url":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/","og_site_name":"\u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633","article_modified_time":"2025-12-24T13:58:23+00:00","og_image":[{"width":1024,"height":1024,"url":"https:\/\/express24.ir\/d\/wp-content\/uploads\/2025\/05\/Express24_ir.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"\u0632\u0645\u0627\u0646 \u062a\u0642\u0631\u06cc\u0628\u06cc \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646":"6 \u062f\u0642\u06cc\u0642\u0647"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/","url":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/","name":"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647) - \u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633","isPartOf":{"@id":"https:\/\/express24.ir\/d\/#website"},"datePublished":"2025-11-21T18:23:35+00:00","dateModified":"2025-12-24T13:58:23+00:00","breadcrumb":{"@id":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/#breadcrumb"},"inLanguage":"fa-IR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/express24.ir\/d\/product\/supercourse-0000005112\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u062e\u0627\u0646\u0647","item":"https:\/\/express24.ir\/d\/"},{"@type":"ListItem","position":2,"name":"\u0641\u0631\u0648\u0634\u06af\u0627\u0647","item":"https:\/\/express24.ir\/d\/"},{"@type":"ListItem","position":3,"name":"\u06a9\u062a\u0627\u0628 GraphQL \u0628\u0627 ASP.NET Core \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u0648\u06cc\u062f\u06cc\u0648\u0647\u0627\u06cc \u0641\u0627\u0631\u0633\u06cc + \u067e\u0627\u062f\u06a9\u0633\u062a \u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 PDF \u0641\u0627\u0631\u0633\u06cc + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f2\u06f0\u06f0\u06f0 \u0646\u06a9\u062a\u0647 + \u06a9\u062a\u0627\u0628 \u0647\u0627\u06cc PDF \u0641\u0627\u0631\u0633\u06cc \u06f4\u06f0\u06f0\u06f0 \u06a9\u0648\u06cc\u06cc\u0632 + \u06f6\u06f0\u06f0\u06f0 \u0641\u0644\u0634 \u06a9\u0627\u0631\u062a (\u0628\u0647 \u0635\u0648\u0631\u062a \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u0639\u0628\u0647 \u062d\u0627\u0641\u0638\u0647)"}]},{"@type":"WebSite","@id":"https:\/\/express24.ir\/d\/#website","url":"https:\/\/express24.ir\/d\/","name":"\u0641\u0631\u0648\u0634\u06af\u0627\u0647 \u0627\u06a9\u0633\u067e\u0631\u0633","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/express24.ir\/d\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fa-IR"}]}},"_links":{"self":[{"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/product\/232481","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/comments?post=232481"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/media\/67493"}],"wp:attachment":[{"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/media?parent=232481"}],"wp:term":[{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/product_cat?post=232481"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/express24.ir\/d\/wp-json\/wp\/v2\/product_tag?post=232481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}