小编Mic*_*han的帖子

WPF TextBlock红色负数

我试图找出创建样式/触发器以将前景设置为红色的最佳方法,当值<0时,最好的方法是什么?我假设DataTrigger,但我如何检查负值,我是否必须创建自己的IValueConverter?

wpf triggers styles datatrigger textblock

8
推荐指数
3
解决办法
9140
查看次数

什么是参数前面的@ Sign

可能重复:
变量名前的@符号在C#中是什么意思?

我已经在C#中编写了大约一年的编码,最近我遇到了以下内容

public bool OnPreUpdate(PreUpdateEvent @event)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,事件前面有一个"@"符号,这是为了防止编译器将其检测为事件类型,因此"@"被视为任何其他文本还是有特殊意义?

.net c# parameters

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

C#iTextSharp AutoAdjust列宽

有没有办法自动调整列宽以适应尽可能多的内容(有点像双击列宽是一个网格控件).

目前我将它们设置为百分比,但由于根据搜索条件有不同的内容,我希望适当调整列宽.

我目前正在设置宽度如下:

var table = new PdfPTable(9) {WidthPercentage = 100};
var colWidthPercentages = new[] {6f, 10f, 10f, 10f, 20f, 20f, 8f, 8f, 8f};
table.SetWidths(colWidthPercentages);  
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何做到这一点,或者如果没有,找到一个列需要适合其内容的最佳宽度?

c# column-width itext

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

Visual Studio 2015 NodeJS/Typescript覆盖节点启动文件

我一直收到以下错误:

Error Code: TS5055  
Cannot write file C:/project/dir/server.js' because it would overwrite input file.
Project: TypeScript/JavaScript Virtual Projects
Run Code Online (Sandbox Code Playgroud)

我甚至尝试将我的条目文件名更改为nodeserver.js一段时间后我得到了同样的错误:

Error Code: TS5055  
Cannot write file C:/project/dir/nodeserver.js' because it would overwrite input file.
Project: TypeScript/JavaScript Virtual Projects
Run Code Online (Sandbox Code Playgroud)

如何找出试图覆盖它的组件?

我注意到文件BuildAction设置为Compile'发布'为true.这可能是原因吗?关闭Compile.js文件的含义是什么?我不会得到任何错误检查吗?

配置文件

我的tsconfig.json

{
  "compileOnSave": true,
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "moduleResolution": "node",
    "isolatedModules": false,
    "jsx": "react"
  },
  "exclude": [
    "node_modules",
    "public",
    "server.js",
    "Scripts/typings/main",
    "Scripts/typings/main.d.ts"
  ],
  "filesGlob": [
    "./src/**/*.ts",
    "./src/**/*.tsx"
  ]
}
Run Code Online (Sandbox Code Playgroud)

我的package.json

{ …
Run Code Online (Sandbox Code Playgroud)

javascript compiler-errors node.js typescript visual-studio-2015

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

Visual Studio DataSet Designer刷新表

在visual studio数据源设计器中,有什么方法可以在保持自定义查询的同时刷新表及其关系/外键约束?

我现在这样做的方法是删除表并再次添加它.这会添加所有关系并刷新所有字段.

另外,如果我更改字段数据类型,是否有办法自动刷新数据源中的所有字段?再次没有删除表并再次添加它.

原因是因为我的一些TableAdapter附加了很多复杂的查询,当我删除表时,适配器也会被删除,包括所有查询.

我正在使用Visual Studio 2008并连接到MySQL数据库.

Any1有个主意吗?

database dataset dataset-designer visual-studio-2008

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

如何实现C#Rhino Security

我正在尝试实现Rhino Security,我已经设法找到了几个教程,但他们没有提供足够的信息来完全理解它,我想知道是否有人知道一个好的来源从哪里学习Rhino Security.或者使用NHibernate实现安全性的最佳替代方案.

是否有针对Rhino Security中任何方法/类的某种文档?

c# security nhibernate privileges rhino-security

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

Thread.MemoryBarrier()Bug的解释与OoOP

好吧,在阅读了Albahari在C#中的线程之后,我试图了解Thread.MemoryBarrier()和乱序处理.

继Brian Gideon对我们为什么需要Thread.MemoerBarrier()的回答后,他提到以下代码会导致程序无限期地在Release模式下循环而且没有连接调试器.

class Program
{
    static bool stop = false;

    public static void Main(string[] args)
    {
        var t = new Thread(() =>
        {
            Console.WriteLine("thread begin");
            bool toggle = false;
            while (!stop)
            {
                // Thread.MemoryBarrier() or Console.WriteLine() fixes issue
                toggle = !toggle;
            }
            Console.WriteLine("thread end");
        });
        t.Start();
        Thread.Sleep(1000);
        stop = true;
        Console.WriteLine("stop = true");
        Console.WriteLine("waiting...");
        t.Join();
    }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么,在没有添加Thread.MemoryBarrier(),甚至在while循环中的Console.WriteLine()修复问题的原因?

我猜测,因为在多处理器机器上,线程运行自己的值缓存,并且永远不会检索更新的值,stop因为它在缓存中有其值?

或者是主线程没有将它提交给内存?

为什么Console.WriteLine()修复此问题?是因为它还实现了MemoryBarrier吗?

.net c# multithreading memory-barriers

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

ASP.NET Identity WebApi 2 vs MVC 5登录Cookies

我正在使用ASP.NET MVC 5和WebApi 2并尝试使用重定向进行Ajax登录(如果成功).

对于身份验证,我使用默认为新的ASP.NET MVC项目提供的ASP.NET标识库.

我得到了一切正常,使用MVC 5一切都很好.但对于我的生活,我无法让标准的MVC控制器返回简单的JSON.(它包装了我想要在父对象中返回的JSON)是的我可以在客户端修复此问题,但对我来说这是hacky.

我似乎更好的另一个选择是使用WebApi,它按照我的期望返回对象(只是我的JSON作为正文).但我遇到的问题是ASP.NET身份SignInManager不发送.ASPNet.Identitycookie,除非我返回一个ActionResult.

下面是我的WebApi控制器,它返回正确的预期最小JSON但不发送Set-Cookie命令,因此任何重定向都会将用户视为未登录.

[Authorize]
public class AccountController : ApiController
{
    public AccountController(IApplicationSignInManager signInManager)
    {
        SignInManager = signInManager;
    }

    public IApplicationSignInManager SignInManager {....}

    //
    // POST: /Account/Login
    [HttpPost]
    [AllowAnonymous]
    [NgValidateAntiForgeryToken]
    public async Task<HttpResponseMessage> Login(LoginViewModel model)
    {
        // Temporarily using Dynamic 
        dynamic res = new ExpandoObject();

        // This doesn't count login failures towards account lockout
        // To enable password failures to trigger account lockout, change to shouldLockout: true
        var status = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc asp.net-web-api asp.net-identity

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

EntityFramework 6 - 禁用DbUpdateConcurrency检查

有没有办法关闭特定语句或DbContext的实体框架并发检查?

我可以看到EF在插入后直接生成选择.例如

-- Insert Statement
INSERT X (a, b, c)
VALUE (m, n, o)

-- Concurrency Check
SELECT ID
FROM X
WHERE @@ROWCOUNT > 0 AND ID = scope_identity()
Run Code Online (Sandbox Code Playgroud)

我需要将其关闭的原因是因为我正在使用一个具有Insert触发器的表,该触发器替换插入,执行某些逻辑,然后在内部插入它.因为范围是BEGINs和ENDs在触发器内,scope_identity()会丢失.

不幸的是我无法更改触发器:-(因为它超出了我的控制范围:-(触发器是为了确保特定字段的任何组合不会在表中重复,因此所有者不会删除它.

有没有办法告诉EF完全省略并发检查或告诉它使用@@IDENTITY

concurrency triggers entity-framework insert entity-framework-6

5
推荐指数
0
解决办法
189
查看次数

亚马逊Alexa - 如何创建通用插槽

如何为Alexa技能创建通用插槽?因此,我可以创建自己的Todo应用程序,它将识别自由格式文本.

alexa alexa-skill alexa-skills-kit alexa-slot

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