标签: asp.net-mvc-views

缩小ASP.Net MVC应用程序的HTML输出

这可能是下面问题的重复,但唯一的答案是死链接:
缩小ASP.NET应用程序的Html输出

在使用ASP.Net时,对我来说,一个更令人讨厌的方面是Visual Studio为空白放置空格而不是制表符,这会增加最终HTML的大小.我原本以为只是改变Visual Studio设置而不是使用标签,但是我的团队中的其他人仍然会最终覆盖空格.

我的问题有两个方面:首先是在每个项目设置上有一种方法可以在使用空格或制表符的情况下进行更改(如果是这样的话甚至是值得的),其次,有没有办法在生成时简单地缩小所有视图?

asp.net asp.net-mvc minify asp.net-mvc-views

36
推荐指数
4
解决办法
3万
查看次数

MVC 4 - 如何将模型数据传递给局部视图?

我正在构建一个配置文件页面,其中包含许多与特定模型(租户)相关的部分 - AboutMe,MyPreferences - 这些事情.这些部分中的每一部分都将是部分视图,以允许使用AJAX进行部分页面更新.

当我点击ActionResultTenantController中的一个时,我能够创建一个强类型视图,并将模型数据传递给视图.部分观点无法实现这一点.

我创建了一个局部视图_TenantDetailsPartial:

@model LetLord.Models.Tenant
<div class="row-fluid">
    @Html.LabelFor(x => x.UserName) // this displays UserName when not in IF
    @Html.DisplayFor(x => x.UserName) // this displays nothing
</div>
Run Code Online (Sandbox Code Playgroud)

然后我有一个视图MyProfile,将呈现提到的部分视图:

@model LetLord.Models.Tenant
<div class="row-fluid">
    <div class="span4 well-border">
         @Html.Partial("~/Views/Tenants/_TenantDetailsPartial.cshtml", 
         new ViewDataDictionary<LetLord.Models.Tenant>())
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

如果我将代码包装在DIV _TenantDetailsPartial里面@if(model != null){},那么页面上就不会显示任何内容,所以我猜测有一个空模型被传递给视图.

为什么我ActionResult在'session'中创建一个来自用户的强类型视图会被传递给视图?如何将'session'中的用户传递给不是从ActionResult?创建的局部视图?如果我遗漏了这个概念,请解释一下.

c# asp.net-mvc model partial-views asp.net-mvc-views

32
推荐指数
4
解决办法
10万
查看次数

如何在MVC3中的局部视图中渲染一个截面?

在MVC3项目中,我有一个带有此代码的"_Layout.vbhtml"文件

<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    ...
    <script src="@Url.Content("~/Scripts/jquery-1.8.2.min.js")"></script>
    @RenderSection("Scripts", false)
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

然后,我在共享文件夹中有一个部分视图"ValidationScripts.vbhtml"

@Section Scripts
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.fix.js")"></script>  
    <script src="@Url.Content("~/Scripts/localization/messages_de.js")"></script>      
End Section
Run Code Online (Sandbox Code Playgroud)

如果我从这样的视图中调用部分视图...

@ModelType MvcExample.MyModel
@Code
    ViewData("Title") = "Test"
End Code

@Html.Partial("ValidationScripts")

<h2>Just a Test</h2>
...
Run Code Online (Sandbox Code Playgroud)

"脚本"部分未在页面上呈现,输出HTML为

<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    ...
    <script src="@Url.Content("~/Scripts/jquery-1.8.2.min.js")"></script>

  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如何在局部视图中渲染剖面?

asp.net-mvc asp.net-mvc-partialview asp.net-mvc-views razor asp.net-mvc-3

25
推荐指数
2
解决办法
5万
查看次数

将CSS类添加到Html.ActionLink

我想在我的页面中设置一个链接,并使用Html.ActionLink创建链接.问题是我不知道如何设置结果链接的样式.如何将CSS类添加到Html.ActionLink以进行样式设置?

css asp.net-mvc-views asp.net-mvc-3

9
推荐指数
1
解决办法
1万
查看次数

ASP.NET MVC渲染视图到字符串以进行电子邮件发送

我想使用MVC视图来创建电子邮件的正文,我遇到过这个问题(http://www.brightmix.com/blog/renderpartial-to-string-in-asp-net-mvc/)但它没有似乎适用于强类型视图(ViewContext为null).但是我想要的东西可以呈现包括母版页在内的完整视图.

我想如果有一种方法只是调用一个没有重定向的视图,只是写一个不同的流并在控制器内发送可能会这样做的电子邮件,但我无法弄清楚如何调用一个视图.

任何建议都会很棒!

提前致谢.

Gifster

asp.net-mvc asp.net-mvc-views asp.net-mvc-2

7
推荐指数
1
解决办法
9030
查看次数

带有数组/列表的ASP.NET MVC 2模型

我正在ASP.NET MVC中创建我的第一个站点,这是一种学习的方式.但我遇到了一个我无法找到解决方案的问题.

我希望我的用户能够创建附有歌曲和标签的专辑.这可能是一个未指定数量的歌曲和标签.但必须至少有5首歌曲和2个标签.

但我无法弄清楚如何通过模型实现这一目标,这是我能够走多远.

public class AlbumCreateModel
{
    [Required]
    [DisplayName("Title")]
    public string Title { get; set; }

    [DisplayName("Description")]
    public string Description { get; set; }

    [DisplayName("Publish")]
    public bool Public { get; set; }

    [DisplayName("Tags")]
    // Min 2 tags no max
    public List<AlbumTagModel> Tags { get; set; }

    [DisplayName("Songs")]
    // Min 5 songs no max
    public List<AlbumSongModel> Songs { get; set; }
}

public class AlbumTagModel
{
    [Required]
    [DisplayName("Tag")]
    // Regex to test no spaces
    // min 2 characters
    // maximum …
Run Code Online (Sandbox Code Playgroud)

models asp.net-mvc-views asp.net-mvc-2

6
推荐指数
1
解决办法
9595
查看次数

5
推荐指数
1
解决办法
1492
查看次数

作为嵌入式资源的C#视图在构建后始终显示旧视图

我有一个MVC2网站,它使用其他程序集的视图.为此,我将视图标记为"嵌入式资源".

我能够看到视图但现在,当我改变视图时,我再也看不到变化了.

我将视图称为嵌入式资源的方式与此类似:

return View("~/Extension/Extensions.MyExtension.dll/" +
    "Extensions.MyExtension.Views.MyItem.Details.ascx", entity);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,"扩展"部分指示必须将视图作为嵌入资源加载.以下部分表示包含视图的程序集.最后一部分是视图的位置(包括命名空间).

在更改视图的整个内容后,如何仍然显示来自早期视图的数据.甚至将视图取消标记为嵌入资源.

为了确保我有最新的Extensions.myExtension.dll程序集,我将程序集复制到网站的bin文件夹中.我用反射器检查了组件,看看组件中是否有正确的视图.这是正确的观点,但我仍然看到旧视图.

更改视图的名称可以暂时解决问题,但对我来说这不是一个好的解决方案.当我将视图的名称更改回原来的状态时,会显示旧视图.

c# embedded-resource asp.net-mvc-views asp.net-mvc-2

5
推荐指数
1
解决办法
1724
查看次数

如何从MVC视图将文件上载到Azure blob存储

我正在编写一个MVC5互联网应用程序,并希望有一些帮助将文件从我自己的文件系统上传到Azure Blob.

这是我的Azure上传代码功能:

public void UploadFileToBlobStorage(string containerName, string blockBlogName, string fileName)
{
    // Retrieve storage account from connection string.
    CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
        CloudConfigurationManager.GetSetting("StorageConnectionString"));

    // Create the blob client.
    CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

    // Retrieve reference to a previously created container.
    CloudBlobContainer container = blobClient.GetContainerReference(containerName);

    // Create the container if it doesn't already exist.
    container.CreateIfNotExists();

    container.SetPermissions(
        new BlobContainerPermissions
        {
            PublicAccess =
                BlobContainerPublicAccessType.Blob
        }); 

    // Retrieve reference to a blob named "myblob".
    CloudBlockBlob blockBlob = container.GetBlockBlobReference(blockBlogName);

    // Create or overwrite the …
Run Code Online (Sandbox Code Playgroud)

file-upload azure azure-storage-blobs asp.net-mvc-views asp.net-mvc-5

5
推荐指数
1
解决办法
8329
查看次数

System.Web.HttpCompileException:类型“&lt;&gt;”是在未引用的程序集中定义的

刚刚将.NET框架升级到4.7.2后发现这个错误:

System.Web.HttpCompileException:some.cshtml(95):错误 CS0012:类型“IEnumerable<>”是在未引用的程序集中定义的。您必须添加对程序集“netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51”的引用。

我应该在哪里添加引用?

c# asp.net asp.net-mvc-views asp.net-mvc-5

5
推荐指数
1
解决办法
827
查看次数