0

ファイルの仮想パスを指定したいのですが、指定できません。

これが私のコードです:

int Course_Id = 1;
int PortfolioID=1;
int ChandidateID=1;

string filepath = Server.MapPath("~/ePortfolio/PortFolioContent/" + Course_Id + "/Assignments/Exhb_" + item.PortfolioID + "_" + item.ChandidateID + ".jpg");

if(System.IO.File.Exists((filepath)))
{                            
    ViewBag.Thumbnail = filepath;
}

Server.MapPathを使用すると、他のパスからデータをフェッチしています。
元のパスは次のとおりです
。E:\ HOBBYHOMES(E-PORTFOLIO)\ HobbyHomesWebApp \ ePortfolio \ PortFolioContent \ 1 \ Assignments
ですが、このパスを使用しています
E:\ HOBBYHOMES( E-PORTFOLIO)\ HobbyHomesWebApp \ ActivityPostin \ Images \ ePortfolio \ PortFolioContent \ 1 \ Assignments \Exhb_1_1.jpg
なぜこれが機能するのかわかりません。助けてください

4

3 に答える 3

3

試すstring filepath = Server.MapPath("~/... ...jpg");

于 2012-05-23T03:08:18.727 に答える
0

@ Url.Content( "〜/ Content / Images / YourImageName.png")を使用できます

于 2012-05-23T05:22:17.883 に答える
0

次のようなことを試してください。

Path.Combine(Server.MapPath("~/"),("ePortfolio\\PortFolioContent\\" + Course_Id + "\\Assignments\\Exhb_" + item.PortfolioID + "_" + item.ChandidateID + ".jpg"));

理論的には、以前に失敗したのと同じ答えが得られます。実際には、まったく異なる答えが得られる場合があります。

最近の質問(現時点では見つかりません)もあります。これは、Server.MapPath( "〜/ .. etc ..")が書き換えられた要求パスで誤動作することがあることを強調しています。このパスを形成しようとしているリクエストを書き直していますか?

于 2012-05-23T06:09:35.477 に答える