2013-04-04 46 views
0

我在從視圖向控制器傳遞一個字符串參數時遇到問題。Kendo UI Editor ImageBrowser路徑問題

查看:

@model ImageModel 

@(Html.Kendo().Editor() 
      .Name("EditorCustom") 
      .ImageBrowser(imagEditorImageBrowserControllereBrowser => imageBrowser 
      .Image(Model.fullpath) 
      .Read("Read", "ImageBrowser") 
      .Upload("Upload2", "ImageBrowser") 
      .Thumbnail("Thumbnail", "ImageBrowser") 
     ) 
      .HtmlAttributes(new { style = "width: 740px;height:440px" }) 
      .Tools(tools => tools 
        .ViewHtml() 
        .CustomButton(cb => cb.Name("new").ToolTip(Html.RawLocalized(GlobalMessageKeys.InsertTable).ToString()).Exec(@<text> 
       function(e) { 
        $("#dialog-modal").dialog("open"); 
       } 
       </text>)) 
       ) 
) 

視圖模型:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 

namespace App.ViewModels 
{ 
    public class ImageModel 
    { 
     public string name { get; set; } 
     public string fullpath { get; set; } 
    } 
} 

控制器:

[HttpPost] 
     public ActionResult Upload2(string path, HttpPostedFileBase file) 
     { 
      try 
      { 
       UploadResource uploadRes = new UploadResource(); 
       uploadRes.Path = path; 
       uploadRes.StreamFile = file.InputStream; 
       uploadRes.Name = file.FileName; 

       ServiceLocator.MaintenanceService.UploadResource(uploadRes); 
      } 

      catch (Exception) 
      { 

      } 

      return Content(""); 
     } 

控制器類從EditorImageBrowserController這是一個DLL繼承,但我要上傳和讀取圖片我自己沒有使用DLL,所以我在控制器中寫了一個名爲「Upload2」的新方法「接收正確傳遞的文件和始終爲空的路徑字符串。我試圖通過視圖中的mvc kendo代碼「.Image(Model.fullpath)」發送它,但沒有任何內容,我還沒有找到解決方案。

+0

實施例外飲食是第一步... – 2013-04-04 18:46:23

回答

1

對不起,這對未來的googlers更有用。

你可以創建自己的控制器,並用類似的東西覆蓋默認值。

public class YourOwnImageBrowserController : EditorImageBrowserController 
{ 
    // 
    // GET: /YourOwnImageBrowserController/ 
    private const string contentFolderRoot = "~/images/yourfolder"; 
    public override string ContentPath 
    { 
     get 
     { 
      return contentFolderRoot; 
     } 
    } 

} 

然後在您的編輯器中使用它。

.Read("Read", "YourOwnImageBrowserController") 
    .Create("Create", "YourOwnImageBrowserController") 
    .Destroy("Destroy", "YourOwnImageBrowserController") 
    .Upload("Upload", "YourOwnImageBrowserController") 
    .Thumbnail("Thumbnail", "YourOwnImageBrowserController")) 

Kendo庫處理所有附加事件。