別の cshtml ファイルから取得した 1 つの cshtml ファイルの情報をどのように使用できるかは、まだよくわかりません。私のプログラムはギャラリーで構成されています。ユーザーが画像の 1 つをクリックすると、単に画像の URL のみを含むページに移動するのではなく、画像とその画像に関連する情報を表示する別のビューにリダイレクトしたいと考えています。これが私の失敗した試みの関連コードです:
コントローラ:
public class HomeController : Controller
{
public ActionResult Index()
{
var client = new WebClient();
var response = client.DownloadString(Url.Action("gallery", "photo", null, Request.Url.Scheme));
var jss = new JavaScriptSerializer();
var result = jss.Deserialize<List<Photo>>(response);
return View();
}
public ActionResult FullImage(Photo m)
{
return View();
}
}
意見:
@section mainContent {
<ul class="thumbnails">
@foreach (var photo in Model)
{
<li class="item">
<a href='@Url.Action("FullImage", "Home", new {imageUrl="~/photos/" + photo.FileName, title= photo.Title, description= photo.Description})'>
<img alt="@photo.Description" src="@Url.Content("~/photos/" + photo.FileName)" class="thumbnail-border" width="180" />
</a>
<span class="image-overlay">@photo.Title</span>
</li>
}
</ul>
}
モデル:
namespace PhotoGallery.Models
{
public class Photo
{
public string Title { get; set; }
public string FileName { get; set; }
public string Description { get; set; }
public string imageUrl { get; set; }
}
}