Загрузить изображение из Silverlight в ASP .net MVC 2.0 Action - PullRequest
2 голосов
/ 15 мая 2010

Я очень старался загрузить фотографию из приложения Silverlight в приложение ASP .net MVC.

Я просто использую WebClient в Silverlight следующим образом:

private bool UploadFile(string fileName, Stream data)
    {
        try
        {
            UriBuilder ub = new UriBuilder("http://localhost:59933/Admin/Upload");
            ub.Query = string.Format("filename={0}", fileName);

            WebClient wc = new WebClient();

            wc.OpenReadCompleted += (sender, e) =>
            {
                PushData(data, e.Result);
                e.Result.Close();
                data.Close();
            };

            wc.OpenWriteAsync(ub.Uri);
        }
        catch (Exception)
        {
            throw;
        }

        return true;
    }


    private void PushData(Stream input, Stream output)
    {
        byte[] buffer = new byte[4096];
        int byteRead;

        while ((byteRead = input.Read(buffer, 0, buffer.Length)) != 0)
        {
            output.Write(buffer, 0, byteRead);
        }

    }

С другой стороны, я создал простое действие под названием Upload:

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Upload()
    {
         //Some code here
    }

Проблема в том, что он не достигает точки останова в методе загрузки.

Это вообще возможно? Причина, по которой я использую Silverlight, заключается в том, что я хочу предварительно просмотреть изображение перед его загрузкой на сервер, и это очень просто в Silverlight.

Мне не удалось сделать это в JavaScript, и поэтому Silverlight может быть более полезным здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...