小编Aar*_*nLS的帖子

MVC4优化如何允许部分视图脚本?

部分视图和MVC的一个问题是,如果您的可重用部分视图需要某些javascript,则无法包含它并将其加载到脚本部分的页面底部.除了性能问题,它意味着像jquery这样的必要事物还没有出现,你必须使用任何jquery相关代码的时髦延迟执行.

这个问题的解决方案是允许部分中的部分,这样部分可以注册它的脚本以显示在布局的正确位置.

据推测,MVC4的优化/捆绑功能应该可以解决这个问题.但是,当我在局部调用@ Scripts.Render时,它将它们包含在部分所在的任何位置.将脚本放在页面末尾并没有任何魔力.

这里有Erik Porter的评论:http: //aspnet.uservoice.com/forums/41199-general-asp-net/suggestions/2351628-support-section-render-in-partialviews

我见过其他一些地方人们说MVC 4解决了这个问题,但没有例子说明如何.

在其他脚本之后,如何使用MVC4优化来解决问题,在主体末尾包含部分所需的脚本?

asp.net-mvc asp.net-mvc-4

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

代码隐藏文件无法识别*.ascx中的控件

我有一个QuestionControl.ascx和一个QuestionControl.ascx.cs代码隐藏在我复制到新项目的文件后面.当我构建项目时,代码隐藏文件中的任何引用到ascx中声明的控件都会给我这个错误:

"QuestionControl"不包含关于"rdbtnlstQuestion1"和没有扩展方法"rdbtnlstQuestion1"接受类型"QuestionControl"的第一个参数的定义可以找到(是否缺少using指令或程序集引用?)

这是我*.ascx的顶部:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="QuestionControl.ascx.cs" Inherits="QuestionControl" %>
Run Code Online (Sandbox Code Playgroud)

我也尝试过CodeBehind:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="QuestionControl.ascx.cs" Inherits="QuestionControl" %>
Run Code Online (Sandbox Code Playgroud)

这是我在classbehind文件中的顶级,它不包含在命名空间中:

public partial class QuestionControl : System.Web.UI.UserControl
{
Run Code Online (Sandbox Code Playgroud)

c# asp.net

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

慢速Excel数据透视表MDX?

每当与数据透视表进行交互时,我都非常难以使用Excel.添加/删除字段,更改过滤器或切片器,都需要在响应之前冻结几分钟的Excel.

看来生成的MDX效率极低.我可以理解他们必须动态生成MDX并且必须支持数据透视表的许多功能,但速度慢100倍是荒谬的.

当他们为行或列上的字段生成MDX时,他们使用DrilldownLevel(... [Property Dimension].[County])

我不确定Excel更复杂方法的目的是什么,但我希望有一些选项可以取消选中,以便Excel不需要使用DrilldownLevel函数.

相反,我通常省略Drilldownlevel函数,只做[Property Dimension].[County] .[County]来访问该属性.

使用Excel的MDX对同一结果集的查询需要5分钟,使用我的MDX需要不到5秒.

我已经验证了Excel渲染/格式化结果的速度不是很慢,因为我使用了Excel使用的MDX并直接在SSMS中运行它来验证时间.我可以在服务器上查看任务管理器,并在处理结果时观察CPU的流失情况.

注意,我不是责备服务器,因为我可以创建运行速度极快且提供相同结果的MDX查询.

如何让Excel生成更高效的MDX?我正在使用Excel 2010.

我听说powerpivot生成更高效的MDX,但是Powerpivot在SSAS之上不可用,因为它没有利用SSAS多维数据集.因此,对于为什么Powerpivot在SSAS之上不起作用的短暂咆哮.如果您将数据从SSAS导入powerpivot,那么您实际上正在执行的是执行巨型交叉连接以将数据从SSAS迁移到Powerpivot表中.如果你试过这个,你会发现它会生成字段名称/标签,例如"Property DimensionCountyCounty Name"......哇真的吗?然后,您只需使用本地Powerpivot的OLAP引擎处理数据,因此依赖于具有64位操作系统的客户端计算机,以便使用合理大小的数据集.这是因为如果你是刚刚切割出SSAS,扔了你所有的努力构建一个复杂的OLAP数据库和所有的元数据,计算,汇总等一半使用SSAS的原因是,它可以汇总详细数据在它返回客户端之前,客户端不需要64位操作系统,并且客户端上不需要大量资源.我非常努力地使用反对SSAS的powerpivot可用,但在尝试了几种方法并且与用户来回之后,它真的没有接近可用的地方.不敲PowerPivot的,因为我看到它的用处在许多其他方案,但如果你的SSAS多维数据集是系统的重要组成部分(即计算,聚集了大量的服务器端,记录等),则PowerPivot的似乎是错误的选项.

这是我的查询示例:

SELECT 
NON EMPTY CrossJoin(
{[Department Dimension].[Name].[Name]},
 {[Finance Month].[Report Year].[Report Year]}
 )
  ON COLUMNS , 
 CrossJoin(
   {[Department Finance Line Type Dimension].[Display Order].[Display Order] }, 
   {[Department Finance Line Type Dimension].[Line Number].[Line Number]},
   {[Department Finance Line Type Dimension].[Display Name].[Display Name]}
   ) 
   ON ROWS  
   FROM 
   (
   SELECT ({[Department Dimension].[County].&[Seminole],[Department Dimension].[County].&[Sarasota]}) ON COLUMNS  FROM [HYP Data View]
   ) 
   WHERE ([Department Finance Line Type Dimension].[Section Name].&[Part 1 …
Run Code Online (Sandbox Code Playgroud)

excel ssas mdx

8
推荐指数
1
解决办法
5170
查看次数

在Flex中反序列化二进制对象时,如何进行对象初始化?

的想什么,我知道并专注于JIST 理解,是如何反序列化的二进制在Flex 3中发生的细节.当被称为构造函数,当属性设置,是私有成员序列化或不全部反序列化发生在通过制定者等等?我很难找到相关信息.

在Flex 3 AIR应用程序,我有一个非常复杂的对象图(只是一堆引用彼此,有点像只是稍微复杂一些大的数据模型对象),我序列化到使用上的FileStream单个调用的文件.对象上的writeObject和readObject,用于序列化和反序列化整个对象图.

我发现我需要总是有一个默认的构造函数,否则我会在反序列化时获得对象的异常,如果它们是ArrayCollection的一部分.所以我必须腾出构造函数参数或设置默认值.我现在有很多制定者像这样在我的课,如下面的地方mConnection积累,需要通过不同的制定者,在那里像以前我有这一切包装成因为所有的信息构造一些信息确实necesary用于连接功能:

class Client
{
 private var mConnection:Connection;
 public function get connection():Connection{ return mConnection; }

 public var mUser:User;
 public function get user():User { return mUser; }
 public function set user(value:User):void 
 {
  mUser = value;
  mConnection.username = user.username;
  mConnection.password = user.password;
 }

 private var mServer:Server;
 public function get server():Server { return mServer;}
 public function set server(value:Server):void 
 { 
  mServer = value;
  mConnection.serverIP = value.serverIP;   
 }

 public function Client()
 {
  mConnection = new Connection();
 }   
}

public …
Run Code Online (Sandbox Code Playgroud)

apache-flex actionscript-3

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

等待与异步调用在同一行的实际用法?

在同一行上使用await调用异步方法的目的是什么?(不是什么行为,但这种模式的实际用途是什么).据我所知,这实际上是一个同步"阻塞"调用,因为在此上下文中的执行在GetDocumentAsync完成之前不会继续,对吗?

Document someDocument = await db.GetDocumentAsync(documentId);
//AFAIK blocks until GetdocumentAsync completes and returns 
CalledAfterAwaitReturnsAndResultIsAvailable(someDocument.SomeProperty);
Run Code Online (Sandbox Code Playgroud)

大多数教程展示了如何调用我见过的异步方法,并且我已经在其他代码中看到了它.对我而言,它违背了异步执行的目的.看起来好像从异步调用中受益,你可以在没有await的情况下进行异步调用,并做一些其他不相关的顺序工作(或启动一些其他异步调用)而不依赖于someDocument,然后执行await以获取结果异步调用,然后做任何依赖于该返回的事情.这样,当异步调用也在另一个线程中工作时,可以执行其他不相关的处理.我已经看到了上述模式,我开始怀疑我是否误解了一些东西.

以这种方式进行异步调用的实际应用是什么,这样它会阻塞直到它完成?

c# asynchronous async-await

7
推荐指数
2
解决办法
1282
查看次数

MSSqlLocalDB和ProjectsV的起源##

我以前只有SQL版两个12 (localdb)\ProjectsV12(localdb)\MSSQLLocalDB 这是当我有VS 2015年更新1安装,使用SSDT工具(数据库项目)一起.

我安装了Update 2,现在有:

在此输入图像描述

注意MSSQLLocalDB仍然是旧版本.

然而,一位同事做了VS 2015的全新安装并且具有:

在此输入图像描述

所以他们使用的是较新版本的MSSQLLocalDB,而且我的版本较旧.即使我们都是Visual Studio的Update 2.

我原本希望使用与MSSQLLocalDB无关的版本名称.问题是,如果每个人都在不同的版本上,这将无法工作,因为我有构建设置将数据库项目部署到localdb,这需要使用SqlPackage,它是特定于版本的:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\SqlPackage.exe

我想了解MSSQLLocalDB的安装和更新位置和方式.我非常确定ProjectsV12/13是Visual Studio安装的一部分.

什么安装MSSQLLocalDB,以及更新它?

重复

建议的副本只是将MSSQLLocalDB描述为"SQL Server 2014 LocalDB默认实例名称".这并没有说明它作为一部分安装或更新它的内容.谢谢

visual-studio localdb

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

PHP条件后跟关闭标记

我有点困惑如何下面的代码工作.在我的脑海中,我想象每个php块作为一个整体执行并呈现为HTML.事实上,第一个块有一个不完整的悬挂支架不能很好地与我想象PHP工作.当PHP模块到达PHP结束标记时,它会做什么?PHP标记内的代码如何影响PHP标记之外的明文输出,即只是有条件地输出表单?

我本以为要完成下面的工作,你实际上必须使用echo语句来有条件地回显表单.

<html>
<head></head>
<body>

<?php
/* if the "submit" variable does not exist, the form has not been submitted - display initial page */
if (!isset($_POST['submit'])) {
?>

    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    Enter your age: <input name="age" size="2">
    <input type="submit" name="submit" value="Go">
    </form>

<?php
    }
else {
/* if the "submit" variable exists, the form has been submitted - look for and process form data */
    // display result
    $age = $_POST['age'];
    if ($age >= …
Run Code Online (Sandbox Code Playgroud)

php

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

ASP.NET 4的IIS和服务器操作系统要求

这仅引用客户端的要求:http: //msdn.microsoft.com/en-us/library/8z6watww%28v=VS.100%29.aspx

我正在寻找类似的文档参考不仅适用于.NET 4,而且还需要ASP.NET 4以及IIS版本,OS SP等.我想看看是否有任何陷阱要求IT在我们的服务器上安装ASP.NET 4和MVC 3.不想在我的脸上有鸡蛋:)

asp.net .net-4.0 asp.net-4.0

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

linq2entities的IQueryable扩展方法

我正在尝试实现一个与linq2entities一起使用的扩展方法.我最初假设如果我的扩展方法接受并返回了一个IQueryable,并且只要我的表达式只使用了受支持的方法,那么它就可以正常工作.我遇到了很多麻烦,所以作为最后的手段,我复制了一个我知道工作的现有.NET扩展方法(FirstOrDefault)并简单地重命名它.看起来它会根据方法返回的表达式来评估"无法转换为商店表达式"验证,而不是方法本身的名称.

var prs = db.People.Where(p => p.PersonKey == 15).Select(p =>
  new
  {
    id = p.PersonKey,
    name1 = p.PersonHistories.AsQueryable().AsOf().Name
  } 
).ToList();
Run Code Online (Sandbox Code Playgroud)

我的扩展方法,它只是我重命名的FirstOrDefault的副本:

public static TSource AsOf<TSource>(this IQueryable<TSource> source)
{
  return source.Provider.Execute<TSource>(Expression.Call(null, ((MethodInfo)MethodBase.GetCurrentMethod()).MakeGenericMethod(new Type[] { typeof(TSource) }), new Expression[] { source.Expression }));
}
Run Code Online (Sandbox Code Playgroud)

错误:

LINQ to Entities does not recognize the method 
'Models.PersonHistory AsOf[PersonHistory](System.Linq.IQueryable`1[Models.PersonHistory])' 
method, and this method cannot be translated into a store expression.
Run Code Online (Sandbox Code Playgroud)

如何实现Linq2Entities支持的IQueryable扩展方法?

我真正想要的AsOf(source,DateTime asOf)就是这样source.FirstOrDefault<IHistory>(s => s.EndDate > asOf && asOf >= s.StartDate ),但我不知道如何实现这一点,以便linq2entities支持它.

LINQKIT:这是我用linqkit想出来的,我希望不知怎的,我可以把它变成更可重用的东西:

Expression<Func<PersonHistory, …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-entities entity-framework

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

MVC控制器索引有时是404?

我添加了3个控制器,对于其中一个控制器,默认情况下索引视图不起作用.

Works(shows index):
http://localhost:1767/Employees/  
http://localhost:1767/Employees/Index
http://localhost:1767/Home/       
http://localhost:1767/Home/Index
http://localhost:1767/
http://localhost:1767/Companies/Index

Doesn't work(gives 404 error):
http://localhost:1767/Companies/  
Run Code Online (Sandbox Code Playgroud)

1)我创建了一个实体框架类库,它是从包含Employees和Companies表的数据库生成的.

2)创建了一个MVC 3空项目.

3)从MVC项目向EF类库项目添加了项目引用.

4)添加了一个控制器,在添加控制器对话框中,我选择了EF模型和其中一个表,并命名为控制器CompaniesController

5)然后我记得我需要一个HomeController,所以我添加了另一个控制器,命名为HomeController,并再次选择了公司实体.

6)最后,我添加了一个EmployeesController,选择了Employees实体.

这是我的Global.asax.cs中唯一的路线:

routes.MapRoute(
          "Default", // Route name
          "{controller}/{action}/{id}", // URL with parameters
          new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
Run Code Online (Sandbox Code Playgroud)

为什么http:// localhost:1767/Companies / URL不像所有其他控制器一样默认为索引操作?我做了一些练习MVC项目,似乎总是遇到这个问题.员工控制器默认为索引工作正常,即使没有路由告诉它这样做?

编辑:这是我收到的错误:

The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, …
Run Code Online (Sandbox Code Playgroud)

model-view-controller asp.net-mvc asp.net-mvc-routing asp.net-mvc-3

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