小编Ric*_*rdo的帖子

如何在Visual Studio的后期构建事件中使用msbuild?

我正在尝试在Visual Studio项目中配置YUICompressor.NET.

据我所知,我必须创建一个.proj文件并将其添加到我的解决方案中.之后,我需要创建一个构建后的事件来构建这个.proj文件,然后我将得到我想要的输出(缩小的js/css文件).

所以我有:

visual studio解决方案资源管理器

这个.proj包含:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/MsBuild/2003">

  <UsingTask TaskName="CssCompressorTask" AssemblyFile="\..\packages\YUICompressor.NET.MSBuild.2.7.0.0\lib\NET20\Yahoo.Yui.Compressor.Build.MsBuild.dll" />
  <UsingTask TaskName="JavaScriptCompressorTask" AssemblyFile="\..\packages\YUICompressor.NET.MSBuild.2.7.0.0\lib\NET20\Yahoo.Yui.Compressor.Build.MsBuild.dll" />

  <Target Name="Minify">

    <ItemGroup>
      <!-- Single files, listed in order of dependency -->
      <CssFiles Include="Content\*.css"/>
      <JavaScriptFiles Include="Scripts\*.js"/>      
    </ItemGroup>

    <CssCompressorTask
          SourceFiles="@(CssFiles)"
          OutputFile="Content\min.css"
       />

    <JavaScriptCompressorTask
          SourceFiles="@(JavaScriptFiles)"
          OutputFile="Scripts\min.js"
       />

  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

我正在尝试将其构建如下:

在此输入图像描述

我收到以下错误:

The command "msbuild C:\Users\Me\Desktop\MvcApplicationExample\MvcApplicationExample\YuiCompressorMsBuild.proj" exited with code 9009.
Run Code Online (Sandbox Code Playgroud)

此错误表明"msbuild"不是有效命令.那么,我该如何构建这种类型的项目呢?(我已经按照本教程:youtube)

谢谢你的帮助.

visual-studio-2010 yui-compressor post-build-event

10
推荐指数
2
解决办法
8530
查看次数

如何避免连接过多?

我希望您能帮助讨论如何使用通用方法避免过多的连接。对此有一般规则吗?

目前,我有一个非常复杂的查询,它连接了 11 个表并且性能很差(即使有索引和更新的统计数据)。使用 Entity Framework Profiler,我收到了减少连接数量的建议,而是执行几个单独的查询:link

每个连接都需要数据库执行额外的工作,并且查询的复杂性和成本随着每个连接的增加而迅速增加。虽然关系数据库针对处理连接进行了优化,但执行多个单独的查询通常比具有多个连接的单个查询更有效。

我应该如何修改以下示例以获得更好的性能?

select  *
from   Blogs blog0_
       inner join Posts posts1_
         on blog0_.Id = posts1_.BlogId
       inner join Comments comments2_
         on posts1_.Id = comments2_.PostId
       inner join Users user3_
         on posts1_.UserId = user3_.Id
       inner join UsersBlogs users4_
         on blog0_.Id = users4_.BlogId
       inner join Users user5_
         on users4_.UserId = user5_.Id
Run Code Online (Sandbox Code Playgroud)

sql sql-server join query-tuning

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

AngularJS比jQuery更快吗?

编辑:基于答案,似乎AngularJS并不比jQuery快,因为它也使用了jQuery(jqLit​​e)的版本.

一位朋友告诉我,jQuery可能很慢,因为它需要为每个请求解析整个HTML页面,以便能够找到DOM对象并操纵它们.对于一个大页面,它会得到一个糟糕的表现.

但是,对于大型HTML页面,AngularJS可能更快,因为它"编译"HTML并且可以更快地访问DOM对象.

这是真的吗?你能否给出一个可靠的链接来证实这一点?

如果不是这样,请给我一个关于jQuery和AngularJS在访问DOM对象方面有何不同的解释.

我也通过性能基准测试,我只发现了这个:链接.

如果Angular不比jQuery快,为什么测试错了?

performance jquery angularjs

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

如何在不先备份的情况下缩小日志文件?

我有一个SQL Server 2008数据库,.mdf文件大小为1 GB,.ldf文件(日志)大小为70 GB。我真的不知道是什么原因使我的日志文件在一周内变得如此之大并停止增长,但是我的主要问题是解决此问题。

我习惯于减少日志文件的大小,但是如果我先备份它,就只能缩小它。如果我尝试先缩小而不备份(使用SSMS),即使SSMS显示可用空间很大,也不会发生任何事情。我可以尝试缩小很多次,但是只有先备份后才能使用。

问题是我这次没有备份,因为我没有可用空间(HD的总大小为120 GB)。

注意1:我的数据库设置为使用完整恢复模型,因为我需要能够进行时间点恢复。

注2:我知道收缩会增加索引碎片。缩小后,我可以REBUILD在索引中使用以避免这种情况。

sql ssms sql-server-2008-r2

4
推荐指数
1
解决办法
9673
查看次数

更新ForEach循环内的变量

我简直无法理解为什么这个简单的代码不起作用.我的预期输出是10和15,但它返回2和3.这意味着更新不起作用.

List<int> numbers = new List<int>();

numbers.Add(2);
numbers.Add(3);

numbers.ForEach(n => n = n*5);

numbers.ForEach(n => Console.WriteLine(n));
Run Code Online (Sandbox Code Playgroud)


注意:我已经搜索了很多,但我无法理解这种行为.

我该如何解决?

更新:字符串的相同行为.

List<string> strings = new List<string>();
strings.Add("a");
strings.Add("b");

strings.ForEach(s => s = s + "--");

strings.ForEach(s => Console.WriteLine(s));
Run Code Online (Sandbox Code Playgroud)

c# linq .net-4.0

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

查询以检索所有相关值为空的组

我有以下内容:

| Group_ID | Value |
|----------|-------|
|      146 |  A    |
|      146 |  B    |
|      239 |  NULL |
|      239 |  F    |
|      826 |  NULL |
|      826 |  NULL |
Run Code Online (Sandbox Code Playgroud)


我只需要检索所有相关值为null的ID.在这个例子中,输出将是826.

我知道这似乎是一个简单的查询,但我很长时间都在努力.

sql

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

如何在泛型方法中获取T的类型?

我有以下通用方法:

protected IEnumerable<T> GetAnimals<T>() where T : Animal
{
  // code
}
Run Code Online (Sandbox Code Playgroud)

我可以使用GetAnimals<Dog>()或者GetAnimals<Cat>()Dog和Cat类继承的地方调用此方法Animal.

我需要的是typeof(T)找到当前方法正在执行DogCat.我到目前为止尝试过:

protected IEnumerable<T> GetAnimals<T>() where T : Animal
{
  bool isDog = typeof(T) is Dog ? true : false;
}
Run Code Online (Sandbox Code Playgroud)

typeof将返回Animal,而不是CatDog,所以这是我的问题.

一种解决方案是创建一个Animal类似的方法WhatIAm()并在Dog中实现它,return typeof(Dog)但我相信这是一个糟糕的解决方案.

有什么建议?

.net c# generics

0
推荐指数
1
解决办法
57
查看次数