Где код из папки "build" на asp.net C# (mvc)

Я должен исправить ошибку на веб-сайте, который использует asp.net, и я не знаю много об этом (asp.net C# mvc)...

проблема в плагине с именем uploadify, и он вызывает скрипт для загрузки файлов:

'script': '<%= ResolveUrl("~/Build/UploadImages")%>/<%= ViewData["build_id"] %>',

в браузере покажи так:

'script': '/prod/cms/Build/UploadImages/680ad442-8e9c-459c-b253-e9c389c1622b',

проблема в том, что папка 'Build' не существует, я думаю, что она создана asp.net....

Я не могу найти код, который загружает файл... Я искал везде слова "SaveAs", "SaveFileAs", "Upload", "Uploadify" во всех файлах, но я до сих пор не нашел его…,

проблема, которая дает uploadify - это "Ошибка HTTP" после того, как он показывает 100% загрузки, я искал в Google, но не повезло... Я думаю, что если я найду скрипт, который загружает файл, возможно, я смогу это исправить

вот весь сценарий моего файла:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<Framework.Models.Image>>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Photo
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>
        Photo</h2>
    <p>
        <label>
            Tipo:</label>
        <%= Html.DropDownList("type", (SelectList)ViewData["types"], new { onchange = "changeScript(this.value)" })%>
    </p>
    <div id="dvUpload">
        <input id="upload" name="upload" type="file" />
        <a href="#" onclick="Upload('<%= ViewData["build_id"] %>')">Fazer Upload</a> | <a
            href="javascript:$('#upload').uploadifyClearQueue();">Limpar Uploads</a>
    </div>

   <%-- <% using (Html.BeginForm("UploadImages", "build", new { id = ViewData["build_id"], type = "c1956908-64f5-4195-ba73-4d7710d560d7" }, FormMethod.Post, new { enctype = "multipart/form-data" }))
       {%>
            <input id="File1" name="upload" type="file" />
            <input type="submit" value="Enviar" />
    <%} %>--%>
    <br />
    <br />
    <table>
        <tr>
            <th>
            </th>
            <th>
                Type
            </th>
            <th>
                Imagem
            </th>
            <th>
                Legenda
            </th>
        </tr>
        <% foreach (var item in Model)
           { %>
        <tr>
            <td>
                <%= Html.ActionLink("Apagar", "deleteimage", new { id = item.Properties.id, build_id = item.Properties.build_id }, new { onclick = "return confirm('Confirma esta ação?')" })%>
            </td>
            <td>
                <%= Html.Encode(item.Type)%>
            </td>
            <td>
                <img src="<%= Cms.Helpers.Settings.CMS_ADDRESS + item.Properties.url_address %>" width="150" height="100" />
            </td>
            <td>
                <%= Html.TextBox(item.Properties.id.ToString(), item.Properties.description) %>
                <input type="button" value="Ok" onclick="saveLegend('<%= item.Properties.id.ToString() %>')" />
            </td>
        </tr>
        <% } %>
    </table>
    <p>
        <%= Html.ActionLink("Create New", "Create") %>
    </p>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HeaderContent" runat="server">

    <script type="text/javascript" src="<%= ResolveUrl("~/Content/JS/swfobject.js") %>"></script>

    <script type="text/javascript" src="<%= ResolveUrl("~/Content/JS/jQuery/jquery.uploadify.v2.1.0.js") %>"></script>

    <script type="text/javascript">

        var html = "";

        jQuery(document).ready(function() {

            html = jQuery("#dvUpload").html();

            jQuery("#upload").uploadify({
                'uploader': '<%= ResolveUrl("~/Content/Flash/uploadfy.swf") %>',
                'script': '<%= ResolveUrl("~/Build/UploadImages")%>/<%= ViewData["build_id"] %>',
                'cancelImg': '<%= ResolveUrl("~/Content/Images/cancel.png") %>',
                'folder': '<%= ResolveUrl("~/Content/Images") %>',
                'multi': true,
                'simUploadLimit': 10,
                'fileDesc': 'Apenas Imagens são permitidas',
                'fileExt': '*.gif;*.jpg;*.png',
                'onError'      : function(errorType) {
                    //alert('The error was ' + errorType.toSource());
                    alert(JSON.stringify(errorType, null, 4));
                },
                'onComplete': function() {
                    alert("foi tudo");
                }
            });

            AddNullValueSelectObject('type');

        });

        function Upload(build_id) {
            jQuery('#upload').uploadifyUpload();
        }

        function changeScript(val)
        {
            jQuery("#dvUpload").empty();
            jQuery("#dvUpload").html(html);

            var culture = jQuery('#culture').val();

            jQuery("#upload").uploadify({
                'uploader': '<%= ResolveUrl("~/Content/Flash/uploadfy.swf") %>',
                'script': '<%= ResolveUrl("~/Build/UploadImages")%>/<%= ViewData["build_id"] %>?type=' + val,
                'cancelImg': '<%= ResolveUrl("~/Content/Images/cancel.png") %>',
                'folder': '<%= ResolveUrl("~/Content/Images") %>',
                'multi': true,
                'simUploadLimit': 10,
                'fileDesc': 'Apenas Imagens são permitidas',
                'fileExt': '*.gif;*.jpg;*.png',
                'onError'      : function(errorType) {
                    //alert('The error was: ' + errorType.toSource());
                    alert(JSON.stringify(errorType, null, 4));
                },
                'onComplete': function() {
                    alert("foi tudo");
                }
            });
        }

        function saveLegend(id)
        {
            var text = jQuery('#' + id).val();

            jQuery.ajax({
                type: 'GET',
                url: '<%= ResolveUrl("~/build/UpdatePhotoLegend")%>/' + id,
                data: 'legend=' + text,
                success: function(data) {
                    alert('Alterado com sucesso!');
                }
            });
        }
        function AddNullValueSelectObject(object_id) {
            jQuery('#' + object_id).append("<option value='00000000-0000-0000-0000-000000000000'>--- SELECIONE ---</option>");
            jQuery("#" + object_id + " option[value='00000000-0000-0000-0000-000000000000']").attr('selected', 'selected');
        }
    </script>

</asp:Content>

заранее спасибо...

2 ответа

Обычно я не отвечал, если не был уверен в своем ответе, так как никто не отвечает...

У меня нет опыта с uploadify, но похоже, что вы используете старую версию uploadify, и API немного изменился, поэтому мне сложно сказать наверняка. Я думаю, что параметр "script" фактически ссылается на "сценарий" на стороне сервера, который обычно обрабатывает сохранение загруженного файла (параметр "uploader" в текущей версии http://www.uploadify.com/documentation/uploadify/uploader/).

Есть ли у вас класс BuildController с действием (методом) UploadImages? Если это так, то это, вероятно, одна из причин вашей ошибки (что-то выдает ошибку при сохранении на диск). Если у вас есть BuildController, мне интересно, правильный ли этот вызов для разрешения URL? Разрешенный путь мне не подходит (обычно вы не разрешаете основанный на маршруте URL в mvc, так как разрешение URL не известно о маршруте).

Если у вас нет BuildController, и я полностью отключен, дайте мне знать, и я удалю этот ответ. Это несколько выстрел в темноте. Но это правдоподобно.

РЕДАКТИРОВАТЬ: на тот случай, если у вас нет опыта работы с MVC, код из "папки Build" должен быть расположен в вашем веб-приложении mvc в папке с именем Controllers внутри класса с именем BuildController внутри метода с именем UploadImages.

Добавил мой комментарий к ответу

Возможно, что скрипт встроен как ресурс. Попробуйте использовать ILSpy, чтобы подтвердить это. В этом случае вам нужно будет получить доступ к исходному коду. Кроме того, возможно, что сценарий был минимизирован / запутан, и поэтому вы не можете ничего найти.

Другие вопросы по тегам