小编Syn*_*der的帖子

Global.asax魔术功能

在Visual Studio中创建ASP.NET Mvc项目时,将创建Global.asax&Global.asax.cs.在这个.cs文件中,您将找到标准Application_Start方法.

我的问题如下,如何调用此函数?因为它不是覆盖.所以我的猜测是这个方法名称是按照惯例.该Application_Error方法也是如此.

我想知道这些方法的钩子在哪里.因为我编写这些方法(不覆盖它们),我在MSDN中找不到任何关于它们的文档.(我找到了这个页面,但它只是告诉你挂钩Error事件并显示一个Application_Error(object sender, EventArgs e)但不是如何链接事件和方法.)

//Magicly called at startup
protected void Application_Start() 
{
    //Omitted
}

//Magicly linked with the Error event
protected void Application_Error(object sender, EventArgs e)
{
    //Omitted
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net error-handling asp.net-mvc

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

启动后更改MVC6的路由集合

在MVC-5中,我可以routetable通过访问来编辑初始启动之后RouteTable.Routes.我希望在MVC-6中也这样做,这样我就可以在运行时添加/删除路由(对CMS很有用).

在MVC-5中执行此操作的代码是:

using (RouteTable.Routes.GetWriteLock())
{
    RouteTable.Routes.Clear();

    RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    RouteTable.Routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
}
Run Code Online (Sandbox Code Playgroud)

但我RouteTable.Routes在MVC-6中找不到或类似的东西.知道如何在运行时更改路径集合吗?


我想在CMS中创建页面时使用此原则添加额外的URL.

如果你有一个类:

public class Page
{
    public int Id { get; set; }
    public string Url { get; set; }
    public string Html { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

和控制器像:

public class CmsController : Controller
{
    public ActionResult Index(int id)
    {
        var page = DbContext.Pages.Single(p => p.Id …
Run Code Online (Sandbox Code Playgroud)

c# routes asp.net-mvc-routing asp.net-core-mvc asp.net-core

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

NodeJS 'DEPTH_ZERO_SELF_SIGNED_CERT'

当我尝试使用我正在编写的 Node.js 客户端连接到网络服务器时,出现上述错误。

但是当我尝试连接到服务器时出现错误。

'DEPTH_ZERO_SELF_SIGNED_CERT'

这是发送请求的代码。并且关闭证书检查不是一个有效的选项。我需要确保连接的安全。

var options = 
    {
        hostname: baseUri,
        port: 443,
        path: 'oauth',
        method: 'POST',
        requestCert: true,
        ca:fs.readFileSync('Comodo_PositiveSSL_bundle.crt'),
        rejectUnauthorized: true,
        headers: {
            //'User-Agent': USER_AGENT,
            'Content-Type': 'application/x-www-form-urlencoded',
            'Content-Length': data.length
        }
    };

    var req = http.request(options, (res) => {
      console.log('statusCode: ', res.statusCode);
      console.log('headers: ', res.headers);

      res.on('data', (d) => {
        process.stdout.write(d);
      });
    });

    req.write(data)
    req.end();

    req.on('error', (e) => {
      console.error(e);
    });
Run Code Online (Sandbox Code Playgroud)

如果有人可以告诉我如何正确设置认证以免生成错误?


证书包的图片。正如您所看到的,该捆绑包仅包含验证服务器本身提供的证书所需的根证书。

证书包

ssl certificate ssl-certificate node.js

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

如何在整数中找到9的个数

我有以下方法,应该在整数中找到9的总数,该方法用于根据9的数量检索员工的合同类型.我尝试了下面的类: -

public class EmployeeCreditCards
{
    public uint CardNumber(uint i)
    {
        byte[] toByte = BitConverter.GetBytes(i);

        uint number = 0;
        for (int n = 0; n < toByte.Length; n++)
        {
            if (toByte[i] == 9)
            {
                number = number + 1;
            }
        }
        return number;
    }
}
Run Code Online (Sandbox Code Playgroud)

其中我试图找到传递的整数中有多少9个,但上面的方法将始终返回零.什么出了什么问题?

c#

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

将ICC颜色配置文件分配给C#中的图像

简而言之:我想为图像指定ICC颜色配置文件而不应用它.

更多信息:在我的公司,我们需要将多层pdf文件合并到一个图层中.为此,我们将pdf页面合并为图像,然后将图像另存为pdf.但是在创建图像的过程中,图像的颜色配置文件会丢失.如果我们在C#中应用颜色配置文件,配置文件将从设备RGB(.NET的默认输出)转换为sRGB_IEC61966-2-1_no_black_scaling.icc配置文件.在转型中,一些颜色会改变.我们需要分配它而不是应用颜色配置文件.意味着没有颜色被转换.

有谁知道如何实现这一目标?提前致谢.

.net c# gdi+ color-management color-profile

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

asp.net标签助手无法正常工作

Asp.net标记助手在我的项目中没有用.

我将此代码添加到 project.json

"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final",
Run Code Online (Sandbox Code Playgroud)

_ViewImports.cshtml我添加

@using Homebank
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
Run Code Online (Sandbox Code Playgroud)

在视图中我使用asp.net标签助手 - 页面不返回数据;

@model Homebank.Models.Admins

@{
    ViewData["Title"] = "Create";
}
 <input asp-for="Email" class="form-control" />
Run Code Online (Sandbox Code Playgroud)

不是错误,不是例外.白页 在此输入图像描述

c# tags helper asp.net-core-mvc asp.net-core

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

发布构建SET命令和%变量%错误

我是批量新手,我可能犯了一个错误.但我有以下后期制作活动:

IF $(ConfigurationName) == Release (
    SET RELEASEPATH = "C:\Users\Synercoder\Documents\Visual Studio 2010\Releases\$(ProjectName)"
    IF NOT EXIST  %RELEASEPATH% (
        GOTO MAKEDIR
    ) ELSE (
        GOTO DIREXISTS
    )
    :MAKEDIR
    MKDIR %RELEASEPATH%
    :DIREXISTS
    COPY /Y "$(TargetDir)$(ProjectName).dll" "%RELEASEPATH%\$(ProjectName).dll"
    COPY /Y "$(TargetDir)$(ProjectName).pdb" "%RELEASEPATH%\$(ProjectName).pdb"
)
Run Code Online (Sandbox Code Playgroud)

但是这会失败,代码为255.如果我用%RELEASEPATH%实际路径替换所有它的工作原理.我查了一下这个SET命令,我觉得我用的是正确的...但就像我说我是一个批量新手.

有什么线索为什么这个在我的情况下失败了?

如果我使用以下代码,这是我的输出:

SET RELEASEPATH = test
ECHO "%RELEASEPATH%"
SET RELEASEPATH = "test"
ECHO "%RELEASEPATH%"
Run Code Online (Sandbox Code Playgroud)

输出:

""
""
Run Code Online (Sandbox Code Playgroud)

command-line batch-file visual-studio-2010 post-build-event

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

C#attributes\avoid硬编码值

只是为了确认没有办法避免c#属性中的硬编码值吗?

[SomeAttribute(3+1)]
public void Foo(string s)
Run Code Online (Sandbox Code Playgroud)

或访问类成员或做任何未预编译的事情?

我现在在postharp中探索重试机制的一个很好的例子 - 并且想看看我是否可以配置系统外部的重试次数

c# attributes postsharp

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

具有 IDisposable 的无限状态机

假设我有一个无限状态机来生成随机 md5 哈希值:

public static IEnumerable<string> GetHashes()
{
    using (var hash = System.Security.Cryptography.MD5.Create())
    {
        while (true)
            yield return hash.ComputeHash(Guid.NewGuid().ToByteArray());
    }
}
Run Code Online (Sandbox Code Playgroud)

在上面的例子中我使用了一个using语句。该.Dispose()方法会被调用吗?CQ,非托管资源会被释放吗?

例如,如果我按如下方式使用机器:

public static void Test()
{
    int counter = 0;
    var hashes = GetHashes();
    foreach(var md5 in hashes)
    {
        Console.WriteLine(md5);
        counter++;
        if (counter > 10)
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

由于hashes变量将超出范围(并且我假设垃圾收集),是否会调用 dispose 方法来释放所使用的资源,System.Security.Cryptography.MD5或者这是内存泄漏?

c# idisposable yield-return

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

使用`of`关键字的F#类型定义

让我说我在F#中非常环保(但在C#有4年经验).我想开始学习F#,我正在学习TryFSharp.org教程.我谈到了计算表达式,但事情并不完全清楚.所以我开始谷歌吧.我遇到了另一篇教程/文章,它在第一个例子(日志记录示例)中解释得更好.但后来我继续读到第二个例子; 我不能遵循代码的流程或它应该如何工作,也许是因为我不理解State类型的定义:

type State<'a, 's> = State of ('s -> 'a * 's)
Run Code Online (Sandbox Code Playgroud)

我曾与几个简单的类型在F#已经工作过,我所看到的struct,class,record但我不知道如何阅读此类型或什么是应该做的.我也无法弄清楚of关键字在那里做了什么.

所以我的问题是:这个类型定义做了什么/它中的of关键字有什么作用?

f#

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

Mysql循环和插入

我有以下MySql脚本:

SET @skip = 0;
SET @max = (SELECT COUNT(*) FROM table1);

CREATE TEMPORARY TABLE TempTable(
   id INT NOT NULL,
   name VARCHAR(32) NOT NULL
);

loop1: LOOP
  INSERT INTO TempTable (id, name) SELECT id, name FROM table1 LIMIT @skip, 1;

  IF @skip < @max THEN
    SET @skip = @skip + 1;
    ITERATE loop1;
  END IF;
  LEAVE loop1;
END LOOP loop1;

SELECT * FROM TempTable;
Run Code Online (Sandbox Code Playgroud)

此脚本无效,但应选择所有ID和名称table1.我正在使用一个循环,因为我也会在这些循环中做其他的东西,但这是为了以后.我不是在寻找类似的解决方案,SELECT id, name FROM table1但我希望我的错误得到修复.所以我可以继续我的循环.

我得到的错误是:

1064 - 您的SQL语法出错; 检查与MySQL服务器版本对应的手册,以便在'loop1:LOOP INSERT INTO …

mysql

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