2009-12-30 94 views
3

我有一個帶有鏈接的網頁,並且該鏈接假設對應於PDF是給定用戶的語言。我想知道我應該把這些PDF文件放在哪裏。如果我將它們放在App_LocalResources中,我無法指定到/App_LocalResources/TOS_en-US.pdf的鏈接嗎?ASP.NET本地化文件

回答

1

PDF絕對不應該在App_LocalResources文件夾中。該文件夾僅適用於RESX文件。

PDF文件可以去你的應用程序的任何其他地方。例如,一個放置它們的好地方應該放在〜/ PDF文件夾中。那麼你的鏈接將必須動態生成的(類似於格雷格顯示):

string cultureSpecificFileName = String.Format("TOS_{0}.pdf", CultureInfo.CurrentCulture.Name); 

不過,也有一些其他的事情要考慮:

  1. 您需要一種方法,真正做到你給定語言的PDF。如果有人出現在您的網站上,並且他們的文化被指定爲Klingon,那麼您不太可能擁有這樣的PDF。
  2. 您需要準確決定文件格式。在給出的例子中,文件必須命名爲TOS_en-US.pdf。它要使用2個字母的ISO文化名稱,請使用CurrentCulture.TwoLetterISOLanguageName,然後文件名將爲TOS_en.pdf。
0

我會在它的參數在一些地方保存的文件名(即「TOS_ {0} .PDF」),然後只需添加相應的後綴代碼:

string cultureSpecificFileName = string.Format("TOS_{0}.pdf", CultureInfo.CurrentCulture); 
0

是否PDF必須有每種不同語言的文件名相同?如果沒有,將它們全部放到一個目錄中,並將路徑存儲在資源文件中。