محتاج أي حد يكلم الـ Order Controller لازم يكون Authorize
انما هنشيل بتاع الـ Product لأنها مش منطقي انما المنطقي ان لما حد يعمل Order او اي حاجة من دي لازم يكون Authorize
فممكن اعمل كل Endpoint تكون Authorize بس الصح لو الكنترولر كله اجي على الكونترولر من فوق واعمل Authorize والـ Default بتكون AllowAnonymous
فانا هعملها فوق ولو فيه Endpoint جواها عايزها تبقا عادي بعملها AllowAnonymous
ودلوقتي برضو مش لازم يبعت Email لأنه ببعت توكين وجواه بيكون الـ Email من ضمن الـ Claims
فهروح على الـ OrderDto واشيل الـ Email
بس هجيب الـ Email ازاي؟ عندنا Property اسمها User ودي بتجيب الـ Claims بتاع الـ User
جبتها منين؟ انا ورثتها من الـ BaseApiController اللي ورث من الـ ControllerBase وهو بيجيبها من الـ HttpContext من الـ Action اللي بيتنفذ دلوقتي
var buyerEmail = User.FindFirstValue(ClaimTypes.Email);
// Change it in all Endpoint
// Inside Endpointونعمل نفس الحوار مع كل الـ Endpoints
نعدي على كل واحد ونشوف اللي بياخد Email ونمسحه
اللي بعدها مش هخليه يبعتلي الايميل اصلا