2012-08-10 9 views
12

मेरे पास _Layout.cshtml के हिस्से के रूप में आंशिक दृश्य है, ताकि यह एकाधिक पृष्ठों पर प्रदान किया जा सके। आंशिक दृश्य को मेनू के रूप में सोचें जो वेबसाइट पर प्रत्येक पृष्ठ पर प्रदर्शित होता है।आंशिक दृश्य से पेरेंट व्यू कैसे प्राप्त करें

जब आंशिक दृश्य के मेनू में इन लिंक पर क्लिक किया जाता है, मैं केवल पहुँच/कार्रवाई विधि है कि आंशिक दृश्य कहा जाता है में देख सकते हैं, जैसे कि यह नाम आदि

है लेकिन क्या मैं वास्तव में जरूरत है यह देखने के लिए कि आइटम पर क्लिक होने पर आंशिक दृश्य था।

मैं इसे कैसे प्राप्त कर सकता हूं?

+0

की जरूरत है मैं तुम्हें सही ढंग से समझ। आप टी का नाम प्राप्त करना चाहते हैं वह देखता है कि आंशिक दृश्य प्रस्तुत किया जा रहा है? क्या यह लेआउट में प्रस्तुत नहीं किया गया है? –

+0

यह सही है: मैं एक निश्चित पृष्ठ पर हूं जिसमें आंशिक दृश्य है, और मैं जानना चाहता हूं कि वह निश्चित पृष्ठ क्या है। ये लिंक जिनके बारे में मैं बात कर रहा था वे भाषा सेटिंग्स हैं, इसलिए मैं भाषा को क्रिया विधि में सेट करना चाहता हूं और उसके बाद उस पृष्ठ पर रीडायरेक्ट करना चाहता हूं (यह एक अलग भाषा में)। ऐसा करने के लिए, मेरे पास इसे संभालने के लिए एक अलग नियंत्रक है, लेकिन मुझे केवल आंशिक दृश्य मिलता है, न कि जिस दृश्य पर वह था। –

उत्तर

22

आप ParentActionContext

दृश्य इस कॉल करना चाहिए से उपयोग कर सकते हैं उदाहरण के लिए

var controller = ControllerContext.ParentActionViewContext.RouteData.Values["Controller"] as string; 
var action = ControllerContext.ParentActionViewContext.RouteData.Values["Action"] as string; 

अद्यतन क्या आप

@HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString() 
@HttpContext.Current.Request.RequestContext.RouteData.Values["action"].ToString() 
+0

ParentActionViewContext मेरी एक्शन विधि में शून्य दिखता है, इसलिए कोई किस्मत नहीं है ... + स्पेसबॉल बहुत अच्छा है - "मैंने आपको अपनी गुड़िया के साथ फिर से खेल नहीं देखा!" –

+0

मुझे लगता है कि मेरी गलती यह है कि कोड नियंत्रक में काम करता है, मैंने दृश्य से एक अलग कॉल का उपयोग करने के लिए अद्यतन किया है (बीटीडब्ल्यू Sapeceball FTW :)) – Iridio

संबंधित मुद्दे