2009-05-12 17 views
9

अभी भी लिंक के लिए थोड़ा नया है। यह मुझे पागल कर देता है। मैं एक कॉलम उपनाम करना चाहता हूं, उपनाम में एक स्थान होना चाहिए।रिक्त स्थान के साथ LINQ से SQL और कॉलम उपनाम

यह ठीक काम करता है:

Dim q = From tmp in t.Table Select iDate = tmp.iDate 

लेकिन, मैं इस

Dim q = From tmp in t.Table Select "Some Alias With Space" = tmp.iDate 

कोई भी विचार काम करना चाहते हैं?

+0

यदि आप, T-SQL का उपयोग कर रहे – Daniel

उत्तर

3

सबसे पहले एलियास के पास रिक्त स्थान नहीं हो सकते हैं, जैसे किसी भी परिवर्तनीय नाम में कोई स्थान नहीं हो सकता है। मेरा सवाल यह है कि आप अपने नाम में एक जगह क्यों चाहते हैं? मुझे यकीन है कि खराब नामकरण सम्मेलनों के बुरे प्रथाओं को स्थापित करने की कोशिश करने के साथ आप क्या हासिल करने की कोशिश कर रहे हैं, इसे पूरा करने के बेहतर साधन हैं।

+1

आप केवल अपने उर्फ ​​में एक जगह है सकते हैं चर नाम में अंतरिक्ष वर्णों का उपयोग नहीं कर सकते हैं का चयन करें * से mytable [मेरे तालिका नाम]। लेकिन डेविड ने कहा, आपके कोड में जगह रखने का कोई मतलब नहीं है। यदि आपको वास्तव में आवश्यकता है, तो _ – CodeLikeBeaker

+1

धन्यवाद का उपयोग करें! अंतरिक्ष की तलाश करने का कारण बी/सी है आईएलआईटी "वापसी q.ToList" इस बिंदु पर मैं बस इसे एक रेड ग्रिड से बांधता हूं। ग्रिड कॉलम हेडर कॉलम नाम लेता है। मैं ग्रिड पर कॉलम हेडर में रिक्त स्थान के लिए एक साधारण दृष्टिकोण की तलाश में था। यह जानकर कि उपनाम में रिक्त स्थान नहीं हो सकते हैं, मैं मैन्युअल रूप से हेडर को संशोधित कर दूंगा। त्वरित प्रतिक्रिया के लिए धन्यवाद! – sugarcrum

0

जहाँ तक मुझे पता है, आप ऐसा नहीं कर सकते क्योंकि कॉलम उपनाम वैध सी # पहचानकर्ता होना चाहिए, और वे सफेद जगहों की अनुमति नहीं देते हैं।

-1

आप क्षमा नहीं कर सकते हैं। नरक, यदि आप लिंक में नाम के साथ एक टेबल लेते हैं तो यह स्वचालित रूप से अंडरस्कोर के साथ स्थान को प्रतिस्थापित करेगा।

इसके अलावा यह संभव नहीं है, यह बेहद बेहद खराब विचार है। ऐसा कुछ जो एक्सेस लिखने वाले लोगों को गोली मार दी जानी चाहिए।

2

उपयोग वर्ग कोष्ठक की तरह

[Some Alias With Space] = tmp.iDate 

LinqToSql में अन्य नाम का उपयोग करने के लिए अगर यह अभ्यस्त काम तो सफेद स्थान निकाल कर से पहले स्तंभ या स्तंभों []

+0

यह समाधान मेरे लिए काम किया –

2

उपयोग सरल अन्य नाम का उपयोग:

var x = from data in mdc.Accounts 
select new 
{ 
    data.AccountName, 
    Total = data.CashAndEquivalent + data.MarginBalance 
}; 

//Total is the alias 
1

डेटा तालिका का उपयोग करके

DataTable dt = (from x in obj.GetAllReqVSTFs() 
       select new 
        { 
         VSTF_id = x.VSTF_id, 
         x.Description, 
         x.PM1, 
         x.PM2, 
         x.Analyst_Status, 
         x.Overall_Status, 
         x.Planed_Analyst_End_Date 
        }).Take(5).ToList().ToDataTable(); 
foreach (DataColumn c in dt.Columns) 
{ 
    c.ColumnName = c.ColumnName.Replace("_", " "); 
} 

gvBurntHours.DataSource = dt; 
gvBurntHours.DataBind(); 
संबंधित मुद्दे