2015-04-23 74 views
4

在我的站點中,我定義了一個Dictionary,它根據會話返回PersianEnglish字符串。以下是我的詞典的代碼:從類中獲取文本值的相同元素中的不同結果

public static string Find_Term(string term) 
{ 
    var dictionary = new Dictionary<string, string>(); 
    dictionary.Add("Accommodation Barges", "بارج اقامتی"); 
    dictionary.Add("Bulk Carriers", "فله بر"); 
    dictionary.Add("Barge", "بارج"); 
    dictionary.Add("Cable Layers", "کابل گذار"); 
    dictionary.Add("Cargo Ships", "باربری"); 
    dictionary.Add("Container Ships", "کانتینر بر"); 
    dictionary.Add("Crew Boats", "پرسنل بر"); 
    dictionary.Add("Cruise Ships", "کروز"); 
    dictionary.Add("Dive Boats", "قایق قواصی"); 
    dictionary.Add("Drilling Rigs", "سکوی حفاری"); 
    dictionary.Add("Fishing Boat", "ماهیگیری"); 
    dictionary.Add("Ferries", "فری"); 
    dictionary.Add("Floating Cranes", "کرن شناور"); 
    dictionary.Add("Floating Hotels", "هتل شناور"); 
    dictionary.Add("Glass Bottom Boats", "کف شیشه ای"); 
    dictionary.Add("Hovercraft", "هاورکرافت"); 
    dictionary.Add("Hydrofoils", "Hydrofoils"); 
    dictionary.Add("Ice Breakers", "یخ شکن"); 
    dictionary.Add("Life Boats", "لایف بوت"); 
    dictionary.Add("Landing Craft", "لندینگ کرافت"); 
    dictionary.Add("Life Rafts", "لایف رافت"); 
    dictionary.Add("Passenger Boats", "مسافر بر"); 
    dictionary.Add("Patrol Boats", "گشت"); 
    dictionary.Add("Pilot Boats", "پایلوت بوت"); 
    dictionary.Add("Platforms", "پلتفرم"); 
    dictionary.Add("Research Vessels", "تحقیقاتی"); 
    dictionary.Add("Salvage Ships", "از رده خارج"); 
    dictionary.Add("Supply Boats", "ساپلای بوت"); 
    dictionary.Add("Support Vessels", "ساپورت بوت"); 
    dictionary.Add("Tankers", "تانکر"); 
    dictionary.Add("Tour Boats", "تور"); 
    dictionary.Add("Towboats", "هدایت کننده"); 
    dictionary.Add("Tugs", "یدک کش"); 
    dictionary.Add("Utility Boats", "یوتیلیتی بوت"); 
    dictionary.Add("All Types", "همه نوع"); 
    dictionary.Add("LogIn", "ورود"); 
    dictionary.Add("Register", "ثبت نام"); 
    dictionary.Add("LogOut", "خروج"); 
    dictionary.Add("Home", "صفحه اصلی"); 
    dictionary.Add("News", "تازه ها"); 
    //dictionary.Add("Builder", "سازنده"); 
    dictionary.Add("Builder", "سازنده"); 
    dictionary.Add("Request this vessel", "درخواست این شناور"); 
    dictionary.Add("Ship Particular", "مشخصات شناور"); 
    dictionary.Add("Build Year", "سال ساخت"); 

    if (HttpContext.Current.Session["Lang"].ToString() == "fa") 
    { 
     return dictionary[term]; 
    } 
    else 
    { 
     return term; 

    } 
    // 
    // TODO: Add constructor logic here 
    // 
} 

返回的字符串正用於Web站點中的關鍵元素的文本屬性。例如下文它工作正常,在位於一箇中繼器的按鈕:

<asp:Repeater runat="server" ID="vslCat" DataSourceID="SqlDataSource2"> 
       <ItemTemplate> 
        <asp:LinkButton runat="server" Text='<%# Dict.Find_Term(Eval("vCat").ToString()) %>' PostBackUrl='<%# Request.RawUrl + "?vslCat=" + Eval("vCat") %>' CssClass="ui-btn ui-mini ui-shadow ui-btn-icon-right ui-icon-carat-r"></asp:LinkButton> 
       </ItemTemplate> 
      </asp:Repeater> 

但在出中繼器的側相同的元素,它沒有錯誤返回任何內容!

<asp:LinkButton runat="server" Text='<%# Dict.Find_Term("All Types")%>' CssClass="ui-btn ui-mini ui-shadow ui-btn-icon-right ui-icon-carat-r" PostBackUrl="~/Default2.aspx" ID="btnCatAllen"></asp:LinkButton> 
      <asp:Repeater runat="server" ID="vslCat" DataSourceID="SqlDataSource2"> 
       <ItemTemplate> 
        <asp:LinkButton runat="server" Text='<%# Dict.Find_Term(Eval("vCat").ToString()) %>' PostBackUrl='<%# Request.RawUrl + "?vslCat=" + Eval("vCat") %>' CssClass="ui-btn ui-mini ui-shadow ui-btn-icon-right ui-icon-carat-r"></asp:LinkButton> 
       </ItemTemplate> 
      </asp:Repeater> 

我不知道是什麼問題!!!請讓我知道你是否找到任何線索。當我們使用的是像在元素<% %>代碼塊屬性等<asp:Button runat="server" text='<%# ...Codes... %>'></asp:Button>外使用一個數據源,如列表視圖或中繼器的任何元素,我們應該使用的元素的id,並給它一個去在代碼orrrrr我們後面

+0

最新錯誤? – naveen

+0

<%#Dict.Find_Term(Eval(「vCat」))當你想將列表綁定到任何ListView時使用,所以如果你想從任何列表視圖中使用它,最好使用這個<%= – Peyman

+0

yeah親愛的peyman在文本中屬性它不起作用,我的<%#Eval(...用於帶有數據適配器的中繼器內部 –

回答

0

要做到這一點,如:

<asp:HyperLink runat="server" NavigationUrl="#"><%= ...Codes... %></asp:HyperLink> 

請注意代碼塊的開頭已經從#改爲=

相關問題