小编cru*_*ush的帖子

常数0.0039215689代表什么?

我一直看到这个常量弹出各种图形头文件

0.0039215689
Run Code Online (Sandbox Code Playgroud)

它似乎与颜色有关吗?

这是Google的第一个热门话题:

void RDP_G_SETFOGCOLOR(void)
{
    Gfx.FogColor.R = _SHIFTR(w1, 24, 8) * 0.0039215689f;
    Gfx.FogColor.G = _SHIFTR(w1, 16, 8) * 0.0039215689f;
    Gfx.FogColor.B = _SHIFTR(w1, 8, 8) * 0.0039215689f;
    Gfx.FogColor.A = _SHIFTR(w1, 0, 8) * 0.0039215689f;
}

void RDP_G_SETBLENDCOLOR(void)
{
    Gfx.BlendColor.R = _SHIFTR(w1, 24, 8) * 0.0039215689f;
    Gfx.BlendColor.G = _SHIFTR(w1, 16, 8) * 0.0039215689f;
    Gfx.BlendColor.B = _SHIFTR(w1, 8, 8) * 0.0039215689f;
    Gfx.BlendColor.A = _SHIFTR(w1, 0, 8) * 0.0039215689f;

    if(OpenGL.Ext_FragmentProgram && (System.Options & BRDP_COMBINER)) {
        glProgramEnvParameter4fARB(GL_FRAGMENT_PROGRAM_ARB, 2, Gfx.BlendColor.R, …
Run Code Online (Sandbox Code Playgroud)

c floating-point constants magic-numbers

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

如何在不使用AttributeRouting在Route属性上指定名称的情况下生成WebApi2 URL?

我已将ASP.NET MVC5应用程序配置为使用AttributeRouting进行WebApi:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        config.MapHttpAttributeRoutes();
    }
}
Run Code Online (Sandbox Code Playgroud)

我有ApiController如下:

[RoutePrefix("api/v1/subjects")]
public class SubjectsController : ApiController
{
    [Route("search")]
    [HttpPost]
    public SearchResultsViewModel Search(SearchCriteriaViewModel criteria)
    {
        //...
    }
}
Run Code Online (Sandbox Code Playgroud)

我想为我的WebApi控制器操作生成一个URL,而不必指定显式路由名称.

根据CodePlex上的这个页面,所有MVC路由都有一个不同的名称,即使它没有指定.

如果没有指定的路由名称,Web API将生成默认路由名称.如果特定控制器上的操作名称只有一个属性路由,则路径名称将采用"ControllerName.ActionName"形式.如果该控制器上有多个具有相同操作名称的属性,则会添加后缀以区分路径:"Customer.Get1","Customer.Get2".

在ASP.NET上,它没有确切地说明默认命名约定是什么,但它确实表明每个路由都有一个名称.

在Web API中,每个路由都有一个名称.路由名称对于生成链接非常有用,因此您可以在HTTP响应中包含链接.

基于这些资源,以及StackOverflow用户Karhgath回答,我被认为以下会产生一个指向我的WebApi路由的URL:

@(Url.RouteUrl("Subjects.Search"))
Run Code Online (Sandbox Code Playgroud)

但是,这会产生错误:

在路径集合中找不到名为"Subjects.Search"的路径.

我已经根据我在StackOverflow上找到的其他答案尝试了一些其他变体,没有成功.

@(Url.Action("Search", "Subjects", new { httproute = "" }))

@(Url.HttpRouteUrl("Search.Subjects", new {}))
Run Code Online (Sandbox Code Playgroud)

实际上,即使在属性中提供Route名称,也只能使用:

@(Url.HttpRouteUrl("Search.Subjects", new {}))
Run Code Online (Sandbox Code Playgroud)

其中"Search.Subjects"被指定为Route属性中的路径名称.

我不想被迫为我的路线指定一个唯一的名称.

如何生成WebApi控制器操作的URL而无需在Route属性中明确指定路由名称?

CodePlex的默认路由命名方案是否可能已更改或记录错误?

有没有人对正确检索已使用AttributeRouting设置的路由的URL的方法有所了解?

c# asp.net asp.net-web-api attributerouting asp.net-web-api-routing

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

是否可以在Visual Studio 2015中配置TSLint?

TSLint抱怨单引号应该是双引号.我们的团队更喜欢使用单引号来包装字符串文字.

我看到TSLint可配置为将模式设置为单引号,但我找不到在Visual Studio 2015中设置这些规则的方法.

在Options中,我在Text Editor> TypeScript> TSLint下找到了几个TSLint选项:

  • 启用TSLint
  • 警告为错误

显然,这些不是我正在寻找的设置......

有没有人找到在Visual Studio 2015中配置TSLint规则的方法,或者这是我们不得不希望它们在不久的将来添加的东西?


此解决方案:在Visual Studio 2015中设置TSLint

似乎只是将TSLint添加到Visual Studio 2015(如果它尚不存在).这不是我正在寻找的.

typescript tslint visual-studio-2015

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

如何使用Dapper将字符串作为NULL发送到SQLServer?

我有一个场景,其中C#中的字符串可以null.我需要它NULL在SQLServer上.

我使用Dapper将它发送到SQLServer,查询如下:

connection.Query<MyObject>("[dbo].[sp_MyStoredProcedure]"), new
{
    StartDate: startDate
}, commandType: CommandType.StoredProcedure);
Run Code Online (Sandbox Code Playgroud)

哪个startDate字符串有时可以等于null.

存储过程的参数是

@StartDate varchar(10) = NULL
Run Code Online (Sandbox Code Playgroud)

当它是时NULL它返回所有记录.我已经确认这种行为可以通过SSMS实现.

我读过Marc Gravell的这篇文章指出:

null vs DBNull问题是一个混乱的常见原因; 但是,通常如果人们null在C#中说他们打算null使用SQL.这是小巧玲珑采用的方法.

这让我相信当string设置为时null,它应该发送DBNull.Value到SQLServer.

但是,情况似乎并非如此.我在发送null字符串时从SQLServer返回0条记录.这似乎表明发送一个空字符串,而不是一个DBNull.Value.

另外,我不能DBNull.Value直接发送:

connection.Query<MyObject>("[dbo].[sp_MyStoredProcedure]"), new
{
    StartDate: DBNull.Value
}, commandType: CommandType.StoredProcedure);
Run Code Online (Sandbox Code Playgroud)

这会在Dapper中产生异常:

System.DBNull类型的成员StartDate不能用作参数值

NULL当我string在C#中可以使用Dapper时,如何使用Dapper 发送到SQLServer null


重要

Dapper确实NULL在字符串发送时发送null.基于错误的信息,这个假设是我的错误.尽管如此,这个问题可能有助于帮助那些做出同样错误假设的其他人. …

c# sql-server dapper

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

ConcurrentDictionary TryGetValue vs [].[]仍然是线程安全的吗?

我有以下内容ConcurrentDictionary:

ConcurrentDictionary<Guid, Session> sessions;
Run Code Online (Sandbox Code Playgroud)

我知道这sessions.TryGetValue(key, out session)是线程安全的,但我的问题是,它sessions[key]是否也是线程安全的?

sessions.TryGetValue(key, out session) 返回true或false,具体取决于它是否能够获取值.

如果无法获得价值,会sessions[key]返回null吗?我想是的.任何人都可以确认或更多地阐明这一点吗?谢谢.

.net c#-4.0 concurrentdictionary

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

正则表达式匹配单词,或什么都不匹配

我真的很难在这上面贴上标签,这可能就是为什么我无法通过搜索找到我需要的东西.

我想要匹配以下内容:

  • 自动回复
  • 自动回复
  • 自动回复

我正在使用的平台不允许指定不区分大小写的搜索.我尝试了以下正则表达式:

.*[aA]uto(?:matic)[ ]*[rR]eply.*
Run Code Online (Sandbox Code Playgroud)

认为(?:matic)会导致我的表达匹配AutoAutomatic.但是,它只是匹配Automatic.

  • 我究竟做错了什么?
  • 这里的术语是什么?

这是使用Perl作为正则表达式引擎(我认为这是PCRE但我不确定).

regex perl pcre

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

如何在CSS中设置JavaFX菜单及其项目的样式?

我有一个在FXML中设置如下的MenuBar:

<MenuBar VBox.vgrow="NEVER">
    <menus>
        <Menu mnemonicParsing="true" text="_File">
            <items>
                <MenuItem mnemonicParsing="true" text="_New Project"/>
                <MenuItem mnemonicParsing="true" text="_Open…"/>
                <MenuItem mnemonicParsing="false" text="Quit"/>
            </items>
        </Menu>
    </menus>
</MenuBar>
Run Code Online (Sandbox Code Playgroud)

这会产生如下菜单:

在此输入图像描述

我用以下CSS 成功设置MenuBarMenu 文件文件的样式:

.menu-bar { /* The menu bar itself */ }
.menu { /* The File menu item */ }
.menu:showing { /* menu when it's being shown (activated) */ }
.menu .label { /* Styles the text on a menu item */ }
.menu:showing .label { /* Styles the …
Run Code Online (Sandbox Code Playgroud)

css javafx menu javafx-2 javafx-8

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

如何通过app.config或web.config或其他方式全局指定DataContractSerializer EmitDefaultValue = false?

我有一个非常大的类库,其中包含> 100个POCO对象.我需要将这些对象序列化为XML以传输到REST服务.

我一直在尝试使用DataContractSerializer,但它i:nil="true"为任何null属性输出XML元素.这使我正在传输XML的REST服务运行起来.是的,我意识到它不应该.服务提供商告诉我,纠正这个问题需要几个月的时间.我没有几个月等待这项服务工作.

我一直在挖掘文档,试图找到一种方法来抑制这些nil对象的传输.我知道我可以在每个POCO对象的每个单独属性上将EmitDefaultValue属性设置为false.除非我别无选择,否则我不打算为100多件物品做这件事.此外,我不相信我应该被迫使用DataContract属性注释我的类库对象.我也不想用DataContractSurrogates镜像我的类库.那只是淫秽.

当然,有一个配置选项,我可以指定序列化的默认行为EmitDefaultValue = false.我一直无法找到它.我希望其他人找到它,或者找到另一个全局选项来抑制XML中的null属性.

  • 可以在app.config/web.config中指定吗?
  • 或者,它可以在DataContractSerializer实例上设置吗?

如果这不存在,那似乎是微软的巨大疏忽.

c# xml asp.net

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

Visual Studio 2012启动错误的调试项目

我在Visual Studio 2012解决方案中有一个ASP.NET Web应用程序项目.我将其称为A.

我将A的目录复制到一个新目录以进行克隆.我将其称为B.

我对A和B做了大量修改,以至于它们甚至都没有相似之处.样式表,脚本,HTML和后端都是不同的.

我启动了A进行调试,它按预期显示在我的浏览器中.我调试了一段时间的应用程序,然后通过Visual Studio 2012中工具栏上的"停止调试"图标终止调试.

然后我启动了B进行调试.相反,我得到A.

我尝试清除浏览器缓存,但这可能不是问题,因为应用程序的服务器端也是错误的.

在运行Clean之后,我尝试了重建项目.尝试调试B时我仍然看到A

我尝试杀死与调试会话相关的所有进程,包括所有iisexpress.exe,MSBuild.exe,WebDev.WebServer40.EXE,Microsoft.VisualStudio.Web.Host.exe实例.

我尝试完全关闭Visual Studio 2012,重新打开它,然后重试调试.

编辑

关闭并重新打开VS2012第三次后,它现在开始允许我看到B.没有其他任何改变.


我能想到的最好的是必须有一些类型的项目设置需要改变,以反映项目所处的空间与复制之前不同,但我还没有找到这样的设置.

我错过了什么?

asp.net visual-studio-2012

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

将int与Java中的字符常量进行比较

我有一个二进制文件,它使用4个字符集来形成具有"含义"的整数.例如,4个字节'0005',以整数形式等于808464437.

我宁愿在我的Java代码中代表这些'0005'而不是808464437.我也不想设置常量final int V0005 = 808464437.

在C++中,我可以执行以下操作:

fileStream->read((byte*) &version, 4); //Get the next bytes and stuff them into the uint32 version

switch (version) {
    case '0005':
        //do something
    case '0006':
        //do something
    case '0007':
        //do something
}
Run Code Online (Sandbox Code Playgroud)

在Java中,我的问题不是读取4个字节并将它们放入某种数据类型.我的问题是将一些数据类型与const char数组进行比较'0005'.

如何将int或其他形式与'0005'Java中的const字符数组进行比较?我需要尽可能高效地做到这一点!

java comparison binary-data

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