4
วิธีเปลี่ยนเส้นทางไปยัง URL ล็อกอินแบบไดนามิกใน ASP.NET MVC
ฉันกำลังสร้างเว็บไซต์สำหรับผู้เช่าหลายรายซึ่งโฮสต์เพจสำหรับลูกค้า ส่วนแรกของ URL จะเป็นสตริงที่ระบุไคลเอ็นต์ซึ่งกำหนดไว้ใน Global.asax โดยใช้โครงร่างการกำหนดเส้นทาง URL ต่อไปนี้: "{client}/{controller}/{action}/{id}" ใช้งานได้ดีกับ URL เช่น / foo / Home / Index อย่างไรก็ตามเมื่อใช้แอตทริบิวต์ [Authorize] ฉันต้องการเปลี่ยนเส้นทางไปยังหน้าการเข้าสู่ระบบซึ่งใช้รูปแบบการแมปเดียวกันด้วย ดังนั้นหากลูกค้าเป็น foo หน้าล็อกอินจะเป็น / foo / Account / Login แทนการเปลี่ยนเส้นทางคงที่ / Account / Login ที่กำหนดไว้ใน web.config MVC ใช้ HttpUnauthorizedResult เพื่อส่งคืนสถานะ 401 ที่ไม่ได้รับอนุญาตซึ่งฉันคิดว่าเป็นสาเหตุให้ ASP.NET เปลี่ยนเส้นทางไปยังหน้าที่กำหนดใน web.config ไม่มีใครรู้วิธีการแทนที่พฤติกรรมการเปลี่ยนเส้นทางการเข้าสู่ระบบ ASP.NET? หรือจะดีกว่าถ้าเปลี่ยนเส้นทางใน MVC …