【问题标题】:ASP.NET Core MVC storing image to databaseASP.NET Core MVC 将图像存储到数据库
【发布时间】:2018-09-25 22:40:23
【问题描述】:

我开始学习 ASP.NET Core MVC,我对将图像存储到数据库有一些疑问。 到目前为止,我的代码就在这里。

DetailModel

using LibaryData.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace LibaryManagmentSystems.Models.Catalog
{
    public class AssetDetailModel
    {
        public int AssetID { get; set; }
        public string Title { get; set; }
        public string AuthorOrDirector { get; set; }
        public string Type { get; set; }
        public int Year { get; set; }
        public string ISBN { get; set; }
        public string DeweyCallNumber { get; set; }
        public string  Status { get; set; }
        public decimal Cost { get; set; }
        public string CurrentLocation { get; set; }
        public string ImageURL { get; set; }
        public int PatronName { get; set; }
        public Checkout LatestChechout { get; set; }
        public IEnumerable<CheckoutHistory> CheckoutHistory { get; set; }
        public IEnumerable<AssetHoldModel> CurrentHolds { get; set; }
    }

    public class AssetHoldModel
    {
        public string PatronName { get; set; }
        public string HoldPlace { get; set; }


    }
}

Detail.cshtml

@model LibaryManagmentSystems.Models.Catalog.AssetDetailModel

<div class ="container">
    <div class="page-header clearfix detailHeading"></div>
    <h2 class="text-muted">View Libary Item </h2>
</div>

<div class="jumbotron">
    <div class="row">
        <div class="col-md-4">
            <div>
                <img class="detailImage" src="@Model.ImageURL" />
            </div>
        </div>
        <div class="col-md-4">
            <div>
                <p id="itemTitle">@Model.Title</p>
                <p id="itemAuthor">@Model.AuthorOrDirector</p>
                <p id="itemStatus">@Model.Status</p>
                <p id="itemType">@Model.Type</p>
                <p id="itemLocation">@Model.CurrentLocation</p>

                @if (Model.Status == "Lost")
                  {
            <p>This item has been lost. It cannot be checked out</p>
            <p><a class="btn btn-lg btn-danger" role="button" asp-controller="Catalog" asp-action="MarkFound" asp-route-id="@Model.AssetID">Mark Item Found</a></p>


                 }

                @if (Model.Status == "Checked OUt")
                {
            <p id="itemPatron">Checked Out by: @Model.PatronName</p>
            <p><a class="btn btn-lg btn-success" role="button" asp-controller="Catalog" asp-action="CheckIn" asp-route-id="@Model.AssetID">Check In</a></p>
            <p><a class="btn btn-lg btn-warning" role="button" asp-controller="Catalog" asp-action="Hold" asp-route-id="@Model.AssetID">Place Hold</a></p>


                }

                @if (Model.Status == "Available")
                 {
            <p><a class="btn btn-lg btn-info" role="button" asp-controller="Catalog" asp-action="Checkout" asp-route-id="@Model.AssetID">Check Out</a></p>
                  }

            </div>
            <div class="col-md-4 detailInfo">
                <table>
                    <tr>
                        <td class="itemLabel">ISBN:</td>
                        <td class="itemValue">@Model.ISBN</td>
                    </tr>
                    <tr>
                        <td class="itemLabel">Call Number:</td>
                        <td class="itemValue">@Model.DeweyCallNumber</td>
                    </tr>
                    <tr>
                        <td class="itemLabel">Replacement Cost:</td>
                        <td class="itemValue">@Model.Cost</td>
                    </tr>
                </table>
            </div>
        </div>
    </div>
</div>

在数据库中,我创建了一个名为 ImageURL 的字段,我通过该地址将图像存储在文件夹目录中,并将图像文件夹保存到 C:\Desktop\LMS\images\emma.jpg

Image 1

当我运行应用程序时,我会得到这样的图片

Image 2

到目前为止有什么帮助吗?

Index.cshtml

@model LibaryManagmentSystems.Models.Catalog.AssetIndexModel


<div id="assets">
    <h3>Libary Catalog</h3>
    <div id="assetsTable">
        <table class="table table-condensed" id="catalogIndexTable">
            <thead>
                <tr>
                    <th>Image</th>
                    <th>Title</th>
                    <th>Author / Director</th>
                    <th>Dew Call Number</th>
                </tr>
            </thead>
            <tbody>
                @foreach (var asset in Model.Assets)
        {
            <tr class="assetRow">
                <td class=""> 
                    <a asp-controller="Catalog" asp-action="Detail" asp-route-id="@asset.Id">
                        <img src="@asset.ImageUrl" class="imageCell" />
                    </a>
                </td>
                <td class="">@asset.Title</td>
                <td class="">@asset.AuthorOrDirector</td>
                <td class="">@asset.DeweyCallNumber</td>
        </tr>
}
            </tbody>
        </table>
</div>
    </div>

【问题讨论】:

  • 复制图片文件夹到你应用的根目录
  • 我做了,又是同样的问题
  • 检查“@Model.ImageURL”在浏览器中呈现的“url”的值
  • 直接在此处发布您的错误或图片,而不是链接
  • 加载资源失败:服务器响应状态为404(未找到)

标签: mysql asp.net image asp.net-core-mvc store


【解决方案1】:

问题在于 wwwrote 文件中的 .css 文件。 我删除它并再次创建它,它可以工作。 并在 wwwroot/images 目录中插入图片就可以了

body {
    padding-top: 50px;
    padding-bottom: 20px;
}

/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}

/* Carousel */
.carousel-caption p {
    font-size: 20px;
    line-height: 1.4;
}

/* Make .svg files in the carousel display properly in older browsers */
.carousel-inner .item img[src$=".svg"] {
    width: 100%;
}

/* QR code generator */
#qrCode {
    margin: 15px;
}

/* Hide/rearrange for smaller screens */
@media screen and (max-width: 767px) {
    /* Hide captions */
    .carousel-caption {
        display: none;
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多