अद्यतन: ये सभी समस्याएं विज़ुअल स्टूडियो में एक वेब प्रोजेक्ट में वेबसाइट एप्लिकेशन को परिवर्तित करने के लिए थीं। एक बार जब मैं खोद गया और मुझे समाधान मिला, जैसा कि मैंने नीचे उत्तर के रूप में चिह्नित किया है।सी #: वेबसाइट प्रोजेक्ट को वेब प्रोजेक्ट में कैसे परिवर्तित करें
असल में, यदि आप अपनी वेबसाइट प्रोजेक्ट को वेब प्रोजेक्ट में अपग्रेड/ले जाना चाहते हैं, तो आप कई त्रुटियों में भाग लेंगे। नीचे दिए गए उत्तर में छोटा कैसे है। टिप्पणियों और सहायता के लिए सभी का धन्यवाद।
पुराना सवाल और शीर्षक के नीचे है:
कैसे सभी वर्ग फ़ाइलों को नाम स्थान xx {} रैप करने के लिए?
वेबप्रोजेक्ट (या किसी भी प्रोजेक्ट) में सभी कोडबेंड फ़ाइलों को नेमस्पेस कैसे लपेटेंगे?
namespace MyDomain
{
// regular code here
}
कम लंबी कहानी ...
मैं एक परियोजना है कि विदेशी आउटसोर्स किया गया था परिवर्तित करने की है। अकेले 'वेब' परियोजना में 20,000 से अधिक फाइलें, इस तरह की एक साधारण वेबसाइट (हिलाता है) के लिए। यह वीबीएनईटी और सी # (हां, दोनों शिकायत) का उपयोग कर बनाम बनाम 2005 में लिखा गया था। यह मूल रूप से एक वेबसाइट आवेदक था। मैंने इसे वेब अनुप्रयोग में परिवर्तित कर दिया है, मुख्य रूप से 8,000 "अस्थायी" विधानसभाओं के कारण जो आपके द्वारा प्रकाशित किए जाने पर उत्पादित होते हैं।
ठीक है, मैं वीएस -2008 में परिवर्तित कर रहा हूं। मैंने सभी कोड को सी # में परिवर्तित कर दिया है। अछा लगता है। मैंने पृथक असेंबली में सभी विशेष ऐप_Code/वीबी और सी # कोड लाए हैं।
अब जब मैं फिर से संकलित करने का प्रयास करता हूं, तो मुझे बड़ी संख्या में त्रुटियों के बारे में सतर्क किया जाता है। मैं कोडस्हिन्ड फ़ाइलों को नेमस्पेस में लपेटकर और नए नेमस्पेस का उपयोग करने के लिए उपयोगकर्ता नियंत्रण को अपडेट करके इन्हें ठीक करता हूं।
लेकिन ... 5000+ त्रुटियां जाने के लिए ... मदद करें!
alt text http://eduncan911.com/blog/thumbnail/4-15-2009.6-00-13.PM.png
हो सकता है कि वहाँ एक और तरीका है?
public partial class MyHomepage_MyStuff_MyPosts : SecurePage
{ ... }
सूचना वर्ग के नाम MyHomepage_MyStuff_MyPosts: यहाँ codehind से एक नमूना टुकड़ा है। यह /MyHomepage/MyStuff/MyPosts.aspx पर फ़ाइल के स्थान का निर्देशिका पथ है।
त्रुटि यह है कि codebehind फ़ाइल को इस्तेमाल होने वाले नियंत्रण का संदर्भ नहीं मिल सकता है। जैसे:
ctl_website_rpt.RowCount = _totalCount;
यह एक नियंत्रण (उनके नामकरण परंपरा) ASPX फ़ाइल के भीतर "ctl_website_rpt" कहा जाता है। एएसपीएक्स पेज हेडर में है:
<%@ Page Title="My Posts" Language="C#"
MasterPageFile="~/MasterPages/Main.master" AutoEventWireup="true"
CodeFile="MyPosts.aspx.cs"
Inherits="MyHomepage_MyStuff_MyPosts" %>
शायद एक तरीका है कि मैं इस पृष्ठ को कहीं और संदर्भित कर सकता हूं? इसे नामस्थान में बदलने के बिना?
namespace Website.MyHomepage.MyStuff
{
public partial class MyPosts
{ ... }
}
<%@ Page Title="My Posts" Language="C#"
MasterPageFile="~/MasterPages/Main.master" AutoEventWireup="true"
CodeFile="MyPosts.aspx.cs"
Inherits="Website.MyHomepage.MyStuff.MyPosts" %>
यह एक विचार है। किसी अन्य समाधान पर उम्मीद करते हुए (प्रश्न को बहुत अधिक विस्तार से अपडेट किया गया)। – eduncan911