小编Lar*_*ard的帖子

MVC应用程序构建速度极慢

我正在开发Visual Studio MVC-4项目.构建解决方案大约需要2分钟,这没有任何意义.这是一个包含5个项目的小型解决方案,每个项目中的文件很少(少于几百个).为了进行比较,我们有一个项目大小是该项目(Web表单)的10-15倍,在我的计算机上构建不到3秒.

我听说我们从MVC2迁移到MVC4,团队记得迁移前解决方案要快得多,但他们无法完全记住它.

它不仅在我的计算机上,而且在团队中的其他计算机上.我很确定它在某种程度上是在解决方案文件中.

我们只有1个帖子构建事件,它没有效果删除它.

关于该怎么做的任何想法?

我试过了什么

符号:

我在这里读了一篇关于设置符号以在本地而不是服务器上运行的帖子.我做到了:

在此输入图像描述

启用"只是我的代码" 确保只调试我的代码:

在此输入图像描述

删除临时文件夹

删除了计算机上所有不同的临时文件夹.

解决方案文件

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Data", "Data", "{C337490A-F7A8-4800-9BD3-668F5231AE2D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Web", "Web", "{58E3725E-75D2-4AB0-A693-D482152A28E5}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Business", "Business", "{8999D8ED-77FD-42F4-A11A-F6F3B4224A41}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C1BC5D04-B71F-4E66-9C2F-352ED8A0AF84}"
    ProjectSection(SolutionItems) = preProject
        Saxo.Application.Publish.build = Saxo.Application.Publish.build
    EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Database", "Database", "{8F63871C-600E-49E5-9858-D3023485CD06}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Changescripts", "Changescripts", "{B3F72D6C-35EF-4D82-ACB9-5DCAE8F0BCA1}"
    ProjectSection(SolutionItems) = preProject
        30042013-DescriptionNotNull.sql = 30042013-DescriptionNotNull.sql
        AlterContentTextsAddAllowHtml.txt = …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc build visual-studio visual-studio-2012

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

使用 Bootstrap 响应式设计使两个 html 元素保持在同一行

可能是简单的 CSS,但我已经研究这个很久了。

\n\n

我想在同一行有两个元素:

\n\n
    \n
  • 文本框
  • \n
  • 搜索图标图像
  • \n
\n\n

无论宽度如何,搜索图标都应保持相同的大小,文本框应与 100% 的空间对齐(但仍确保图标位于其旁边。

\n\n

我的问题可以在这张图片中看到(由于文本框的宽度为 100%,它们不会对齐):

\n\n

在此输入图像描述

\n\n

我的标记:

\n\n
<div class="SearchBox">\n                        <div class="searchDiv">\n                            <div class="searchDivFullSpan">\n                                <asp:TextBox runat="server" ID="SearchOnGoogleBox" Height="34px"></asp:TextBox>\n                            </div>\n                            <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Resources/Images/SearchIcon.png" OnClick="SearchBtn_Click" ToolTip="S\xc3\xb8g efter et emne" Height="48px" OnClientClick="_gaq.push([\'_trackEvent\', \'Global_master\', \'Search for content\']);" />\n                        </div>\n                </div>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的CSS:

\n\n
.SearchInputBox {\n    border: 1px solid #C6D1AD;\n    font-size: 20pt;\n\n    background-color: #FAFAFA;\n}\n\n.searchDiv {\n    padding-top: 10px;\npadding-left: 10px;\npadding-right: 10px;\n}\n\n.searchDivFullSpan {\n    display: inline;\n}\n\n.searchDivFullSpan input[type=text] {\n    width: 100%;\n}\n\n.searchDiv input[type="text"] {\n    background-color: #f3f3e9;\n    -moz-border-radius: …
Run Code Online (Sandbox Code Playgroud)

html css twitter-bootstrap

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

两个服务相互依赖(stackoverflow异常)-如何解决?

我是依赖注入的新手,我正在尝试解决一个问题。我有两项服务。这些服务中的每一个都有需要彼此的方法。

例如:SiteManager在需要我的ForumManager. 我ForumManager有需要我的方法SiteManager

我有以下两个课程

public class SiteManager:ISiteManager
{
    public IForumManager ForumManager { get; set; }

    public SiteManager()
    {
        this.ForumManager = new ForumManager();
    }
}

public class ForumManager:IForumManager
{
    public ISiteManager SiteManager { get; set; }

    public ForumManager()
    {
        this.SiteManager = new SiteManager();
    }
}
Run Code Online (Sandbox Code Playgroud)

很明显,这将导致堆栈溢出异常,因为它们互相调用。我在这里阅读了很多帖子,我想我只需要一些关于如何解决这个问题的小提示。我的接口在他们自己的程序集中。

我考虑过将依赖项放入它们自己的属性中,这样当它们被使用时,它们就被创建了。然而,这是最佳实践吗?

我不使用 IoC 容器(而且我以前没有使用过)。

有关如何以“最佳实践”方式解决此特定问题的任何提示!:-)

c# design-patterns dependency-injection

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

LINQ不使用lambda表达式时的多个顺序

可能重复:
LINQ中有多个"order by"

我想通过一些字段和其他字段来订购一些数据集.

使用lambda表达式这很容易(OrderBy.ThenBy),但是当我有这样的语法时如何做到这一点:

 int maxQueries = int.MaxValue;
        // finds the most search for queries
        var ordered = from p in searchLogs
        where !string.IsNullOrEmpty(p.SearchQuery)
        group p by new 
        { 
           SearchQuery = p.SearchQuery
        } 
        into pgroup
        let count = pgroup.Count()
        orderby count descending
        select new 
        { 
            Count = count, 
            SearchQuery = pgroup.Key.SearchQuery
        };
Run Code Online (Sandbox Code Playgroud)

我似乎找不到一种在降序关键字之后起作用的方法(比如orderby count descending then searchquery).

有任何想法吗?

c# linq

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

返回内存流 - 提供损坏的PDF文件或"无法访问已关闭的流"

我有一个Web服务,它调用以下方法.我想返回一个内存流,这是一个PDF文件.

现在,问题是PDF文件已损坏,代码如下.我认为这是因为文件没有被关闭.但是,如果我关闭它们,我会收到经典错误"无法访问已关闭的流".

当我之前通过文件流保存它时,PDF文件没有损坏.

所以我的谦虚问题是:如何解决它并找回一个未损坏的PDF文件?:-)

我的代码:

public Stream Generate(GiftModel model)
{
    var template = HttpContext.Current.Server.MapPath(TemplatePath);

    // Magic code which creates a new PDF file from the stream of the other
    PdfReader reader = new PdfReader(template);
    Rectangle size = reader.GetPageSizeWithRotation(1);
    Document document = new Document(size);

    MemoryStream fs = new MemoryStream();
    PdfWriter writer = PdfWriter.GetInstance(document, fs);
    document.Open();

    // Two products on every page
    int bookNumber = 0;
    int pagesWeNeed = (int)Math.Ceiling(((double)model.Books.Count / (double)2));
    for (var i = 0; i < pagesWeNeed; i++)
    { …
Run Code Online (Sandbox Code Playgroud)

c# pdf stream itextsharp

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

实体框架中的FirstOrDefault调用已缓存但数据库已更改

我有一个奇怪的问题,我以前没有经历过.我使用Entity Framework来检索我的记录.

我有以下电话:

 var dbOrganisation = repository.DbOrganisation.FirstOrDefault(c => c.Id == id);
Run Code Online (Sandbox Code Playgroud)

我希望没有缓存这个电话.因此,当我进行此调用时,我希望它可以查询数据库并检索最新的DbOrganisation对象.但事实并非如此.

我在彼此之后相对较短的时间(约5-10秒)将这种方法称为相对两次.但在此期间,此表中的十进制值可由某些第三方更改.

但是,即使值更改,FirstOrDefault调用也会检索未更新的版本.

示例情况:

  1. FirstOrDefault打电话,看到字段的十进制值Credits是50
  2. 第三方更改Credits为45
  3. FirstOrDefault拨打电话10秒钟,但是DbOrganisation仍然有50个积分

我究竟做错了什么?我以为FirstOrDefault默认情况下没有缓存调用?

sql caching entity-framework entity-framework-5

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

在标准ASP.NET MVC安装模板中模拟用户

我已经设置了具有正常身份验证的标准ASP.NET MVC站点.我添加了角色,因此新用户可以获得特定的角色.

现在,我希望能够冒充用户.

假冒建议

当我搜索时,冒充来自以下方式:

     FormsAuthentication.SetAuthCookie(user.UserName, false);
Run Code Online (Sandbox Code Playgroud)

这在默认情况下不起作用,因为您必须做两件事:

1:

启用表单身份验证

 <system.web>
    <authentication mode="Forms" />
  </system.web>
Run Code Online (Sandbox Code Playgroud)

2:

禁用模块:

<system.webServer>
    <modules>
      <!--<remove name="FormsAuthentication" />-->
    </modules>
    <staticContent>
Run Code Online (Sandbox Code Playgroud)

挑战

但是,这样做会带来一些挑战.

  1. 当您冒充时,您无法退出.通过在LogOut中添加以下内容可以轻松解决此问题: FormsAuthentication.SignOut();
  2. User.IsInRole(Constants.Roles.Creditor);停止工作,所以我们不能在角色检查用户是否

该怎么办?

这个可能归结为我 - 显然 - 尽管尝试了,但还没有完全理解会员框架.但是,你如何冒充在这里工作?

我没有明确的理由使用"表单"身份验证,我开始使用此路径的唯一原因是模拟.所以我看到我有两个明显的方向:

  • A)以不同的方式实现模拟,因此我不会触摸我的web.config来使用表单
  • B)修复表格中的角色问题

这里有什么帮助?:-)

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

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

Sourcetree:尽管在 Windows 上具有有效的 OAUTH 令牌,但 Github 的密码无效

我在 Windows 机器上使用 Github 和 Sourcetree。

我已经进入Tools - Options - Authentication并添加了我的 Github 帐户。我 120% 确定我的设置是正确的。

但是,当我尝试推动任何事情时,我不断收到:

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin develop:develop
fatal: HttpRequestException encountered.
   An error occurred while sending the request.

remote: Invalid username or password.
fatal: Authentication failed for 'REPOLINK'

Pushing to REPOLINK
Completed with errors, see above.
Run Code Online (Sandbox Code Playgroud)

现在,我也尝试在我的设置中删除该帐户,然后手动输入电子邮件/密码。通常它会说 OK 并在我的手机上询问我的 2FA 代码,但现在它只是失败并以无效的用户名/密码响应。

有任何想法吗?

编辑:

还是有问题。我还尝试将我的提交大小从 15k 文件减少到 1。不起作用。

我设法通过控制台提交(但我每次都必须填写凭据)。

所以不幸的是,这仍然没有解决。

windows git github atlassian-sourcetree

4
推荐指数
2
解决办法
2317
查看次数

ASP.NET Core日志API作为默认存储日志在哪里?

在ASP.NET Core 2.0中,我使用默认的日志记录API.我的应用程序作为Azure Web App托管.

我的问题:这些输出在哪里?我该如何修改它?

(我现在不需要在我的数据库或文件系统中使用它们,只需阅读最近的日志进行一些调试).

我在做什么:

在我的Startup.cs文件中我注入了日志记录:

private readonly ILogger<Startup> _logger;

public Startup(IConfiguration configuration, ILogger<Startup> logger)
{
    _logger = logger;
    Configuration = configuration;
}
Run Code Online (Sandbox Code Playgroud)

然后我写了几个:

_logger.LogInformation("Configure RUNNING");
Run Code Online (Sandbox Code Playgroud)

但是,我无法在FTP/Azure门户中的日志中找到任何这些内容.

c# asp.net logging asp.net-core asp.net-core-2.0

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

DownloadString为https网址提供了超时,似乎可以在浏览器中使用

我试图将此URL中的内容导入我的程序:https://data.mtgox.com/api/2/BTCUSD/money/ticker.在我的任何浏览器中访问URL时,它都可以正常运行.

但是在我的程序中,它会等待90秒,并给我一个超时.

这是我的代码:

    private const string ApiLnk = "https://data.mtgox.com/api/2/BTCUSD/money/ticker";

    static void Main(string[] args)
    {
        using (WebClient client = new WebClient())
        {
            string s = client.DownloadString(ApiLnk);
            int i = 0;
        }
    }
Run Code Online (Sandbox Code Playgroud)

字符串s永远不会被分配,因为client.DownloadString()是一个停止.

获得像Google.com这样的普通网址时,它的效果非常好.

知道什么是错的吗?

c# https json webclient

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