REST WCFサービスの添付ファイルとして画像をアップロードしようとしていますが、次のエラーが発生しています。 "パス" C:\ ImageUpload "へのアクセスが拒否されました" このフォルダへの完全なアクセス権を有効にしました。なぜこのエラーが出るのか分かりません。 私はWCFの初心者であり、オンラインリソースから集めたほとんどのコードです。 私のコードに間違いがあった場合にお知らせください。 ここに私のコードです。RESTful WCFサービスの添付ファイルとして画像をアップロードする
REST WCF Service Code:
[OperationContract]
[WebInvoke(UriTemplate = "uploadImage/{parameter1}")]
void uploadImage(Stream fileStream);
public void uploadImage(Stream fileStream)
{
string filePath = @"C:\ImageUpload";
FileStream filetoUpload = new FileStream(filePath, FileMode.Create);
byte[] byteArray = new byte[10000];
int bytesRead, totalBytesRead = 0;
do
{
bytesRead = fileStream.Read(byteArray, 0, byteArray.Length);
totalBytesRead += bytesRead;
}
while (bytesRead > 0);
filetoUpload.Write(byteArray, 0, byteArray.Length);
filetoUpload.Close();
filetoUpload.Dispose();
}
これは私のテストクライアント・コード(単純な.aspxのWebページ)です
protected void btnUpload_Click(object sender, EventArgs e)
{
string file = FileUpload1.FileName;
RESTService1Client client = new RESTService1Client();
byte[] bytearray = null;
string name = "";
if (FileUpload1.HasFile)
{
name = FileUpload1.FileName;
Stream stream = FileUpload1.FileContent;
stream.Seek(0, SeekOrigin.Begin);
bytearray = new byte[stream.Length];
int count = 0;
while (count < stream.Length)
{
bytearray[count++] = Convert.ToByte(stream.ReadByte());
}
}
WebClient wclient = new WebClient();
wclient.Headers.Add("Content-Type", "image/jpeg");
client.uploadImage(FileUpload1.FileContent);
}
あなたはフルコントロールのユーザーへのアクセスを与えましたか? WCFサービスがそのアカウントで実行されていますか? –
BOth WCFサービスとクライアントは私のローカルシステムにあります。私は "ImageUpload"フォルダのセキュリティタブにあるすべてのユーザーにフルアクセスできました。 – Henry
"Everyone"へのアクセスを試してください。 –