2

画像パスをデータベースにアップロードし、画像フォルダにファイルを保存しようとしています。これは、getExtension部分(.jpg、.gifなど)を除いて正しく機能します。Path.GetExtensionメソッドは常にnull( "")を返しますが、その理由はわかりません。

以下に、使用されているコードを示します。

string imagesFolderPath = Server.MapPath("//Images");
imagesFolderPath += "//";

string newImageName = addProduct.id.ToString();
string extension = Path.GetExtension(fileUpload.FileName.ToString());

addProduct.imagePath = "Images//" + newImageName + extension;

fileUpload.SaveAs(imagesFolderPath + newImageName);
4

1 に答える 1

1

MSDNドキュメントによると:

指定されたパスの拡張子(ピリオド「。」を含む)、null、またはString.Empty。パスがnullの場合、GetExtensionはnullを返します。パスに拡張情報がない場合、GetExtensionはString.Emptyを返します。

空の文字列を取得できる唯一の方法""は、パスがないことnull 、パスに拡張子がないことです。

パスに拡張子がないため、空の文字列が表示されます。

于 2012-12-27T12:43:24.373 に答える