小编Bra*_*Rem的帖子


如何仅按文件夹名称导入桶?

角2桶

在Angular 2中,我正试图让文件中描述的桶工作.

官方的Angular 2风格指南讨论了使用来汇总和缩短import陈述.

我发现对于一些桶,我必须index在导入时指定JavaScript文件名,而不是必须的.

桶示例

(修改第12行的app/app.component.ts文件)

在我的实际项目中遇到这个(在ASP.NET下运行)后,我创建了一个Plunker来演示我修改了英雄之旅以使用桶的问题.

app/app.component,导入的基本方法是这样的:

import { HeroService } from './hero.service';
import { HeroesComponent } from './heroes.component';
import { HeroDetailComponent } from './hero-detail.component';
Run Code Online (Sandbox Code Playgroud)

但是,要使用桶,导入定义将如下所示:

import {
  HeroService,
  HeroesComponent,
  HeroDetailComponent
} from '../app';
Run Code Online (Sandbox Code Playgroud)

from '../app';行表示名称中index.ts包含导出/导入组件的文件:

// app/index.ts
export * from './hero-detail.component';
export * from './hero.service';
export * from './heroes.component';
Run Code Online (Sandbox Code Playgroud)

但在所有情况下,这对我都不起作用.我正确使用它的唯一方法是明确包含index文件名:

import {
  HeroService,
  HeroesComponent,
  HeroDetailComponent
} …
Run Code Online (Sandbox Code Playgroud)

javascript angular

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

在组连接linq查询中将字符串转换为十进制

我必须连接两个表,但只返回第二个表中的那些记录,其中与第一个表中的记录关联的所有记录的"值"的总和是相同的.

from p in db.TPs
join n in db.TNs
on p.Key equals n.Key
where (decimal.Parse(p.Value) == db.TNs.Where( nn => nn.Key == p.Key )
                                       .Sum( nn=> decimal.Parse(kk.Value)))
Run Code Online (Sandbox Code Playgroud)

我正在使用Entity Framework Code-First.

当然,Linq抱怨道

LINQ to Entities无法识别方法'System.Decimal Parse(System.String)'方法

表很大,我必须减少输出,因此无法在客户端进行此转换.列类型转换也不是一种选择.

SQL查询是:

select * from TP as p
join * from TN as n on n.Key = p.Key
where p.Value = (select sum(cast(n.Value as decimal(12,2))) from TN where Key = p.Key)
Run Code Online (Sandbox Code Playgroud)

c# sql linq entity-framework

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

防止在填充当前行之前在DataGridView中出现新行?

我在C#3.5的WinForm应用程序中有一个DataGridView。

AllowUserToAddNewRow属性设置为true。当用户在DataGridView中键入任何文本时,另一新行将自动添加到DataGridView。我不希望添加新行,直到对当前行执行了一些检查并且所有必要的信息都已填满为止。

示例:我有一个带有空白行的DataGridView: 带有空白行的DataGridView

当我开始输入时,添加新行还为时过早:

我想要的是仅在用户输入数量后才添加新行:

c# datagridview winforms datagridviewrow

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

.Net Forms PropertyGrid在对多个选定对象排序属性时忽略DisplayNameAttribute

有什么方法可以在.NET Forms PropertyGridDisplayNameAttribute多个选定对象的属性进行排序时获得尊重.当单个对象被选择时,PropertyGrid基于DisplayNameAttribute但是当选择多个对象时,它使用实际的属性名进行排序.

以下代码演示了此问题:

static class Program
{
    [STAThread]
    static void Main()
    {
        Form myForm1 = new Form();
        myForm1.Width = 820;
        myForm1.Height = 340;

        PropertyGrid grid1 = new PropertyGrid();
        grid1.Left = 0;
        grid1.Top = 0;
        grid1.Width = 400;
        grid1.Height = 300;
        myForm1.Controls.Add(grid1);

        grid1.SelectedObject = new MyObject();

        PropertyGrid grid2 = new PropertyGrid();
        grid2.Left = 400;
        grid2.Top = 0;
        grid2.Width = 400;
        grid2.Height = 300;
        myForm1.Controls.Add(grid2);

        object[] objects = new object[] { new MyObject(), …
Run Code Online (Sandbox Code Playgroud)

.net c# winforms

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

系统范围的热键 - 如何以编程方式检测全局键盘快捷键?

如何以编程方式询问Win7以获取所有当前活动的全局键盘快捷键列表?

脚本

在许多版本的Windows中,有所谓的"Windows Key",又名"flag","start key" 等等.

微软有一个支持文章"键盘快捷键的Windows",列出下的部分很多这样的"Microsoft自然键盘按键",以及许多其他不涉及使用"Windows键",如全球Ctrl+ C,等等.

其他键盘快捷键可以偶然发现.例如,Windows Key + Left arrowRight arrowWin7将聚焦窗口移动到显示器周围,并且使用多个监视器从一个显示器移动到下一个显示器.

在"选项"设置中还可以找到其他键盘快捷键,例如,Left- Ctrl+ Alt+ K是" Show KeePass Window " 的默认设置.

此外,可能还有硬件特定的键盘快捷键,例如,在我的笔记本电脑上,Fn+ F8切换扬声器静音.

被盗的键盘快捷键

Snagit运行时,我已将其配置PrtSc为我的快捷方式,但是当Visual Studio(VS)运行时,它会PrtScSnagit窃取.

手动发现键盘快捷键的两种耗时方法

(a)通过仅打开桌面和几个窗口并尝试各种键组合,可以发现全局键盘快捷键.

(b)在VS中,可以通过在键盘快捷键窗口中尝试各种组合来发现许多VS键盘快捷键,其中,如果已经使用了组合,VS将通知一个关于该组合的当前使用情况.

想要发现所有当前活动的全局键盘快捷键的两个原因

(a)避免像锁定计算机的Windows Logo Key + 等恼人的事故L.

(b)确定哪些钥匙目前仍可供转让.

.net c# keyboard-shortcuts windows-7

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

JAVA日期计算错误.?

这是我的代码片段.我需要从某个日期减去天数,但我没有得到我期望的结果:

public class TestingDates {

    public static void main(String[] args) {
        Date toDate=new Date();
        Date fromDate=new Date();
        for (int i = 0; i < 30; i++) {
            fromDate.setTime(toDate.getTime() - i * 24 * 60 * 60 * 1000);
            System.out.println(fromDate);   
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

而且我对这个结果感到困惑

这是输出

Fri Sep 13 12:24:50 IST 2013
Thu Sep 12 12:24:50 IST 2013
Wed Sep 11 12:24:50 IST 2013
Tue Sep 10 12:24:50 IST 2013
Mon Sep 09 12:24:50 IST 2013
Sun Sep 08 12:24:50 IST 2013 …
Run Code Online (Sandbox Code Playgroud)

java date

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

编码/解码 RealVNC 密码

我正在尝试编写可以远程更改另一个盒子上的 RealVNC 密码的 C# 应用程序。

目前有效的是,我可以从已经更改的框中提取密码,将其存储为十六进制字符串,然后将其发送到另一个框,然后以这种方式更改密码,但我需要能够更改密码或即时随机化。

我在创建正确的二进制文件以放置在注册表中时遇到问题。

我知道 VNC 密钥:

byte[] Key = { 23, 82, 107, 6, 35, 78, 88, 7 };
Run Code Online (Sandbox Code Playgroud)

所以使用上面的密钥并传递“1234”作为密码使用以下代码进行加密:

public static byte[] EncryptTextToMemory(string Data, byte[] Key)
{
    try
    {
        MemoryStream mStream = new MemoryStream()

        DESCryptoServiceProvider desProvider = new DESCryptoServiceProvider();
        desProvider.Mode = CipherMode.ECB;
        desProvider.Key = Key;

        CryptoStream cStream = new CryptoStream(mStream,
            desProvider.CreateEncryptor(),
            CryptoStreamMode.Write);

        byte[] toEncrypt = new ASCIIEncoding().GetBytes(Data);

        cStream.Write(toEncrypt, 0, toEncrypt.Length);
        cStream.FlushFinalBlock();

        byte[] ret = mStream.ToArray();

        cStream.Close();
        mStream.Close();

        return ret;
    }
    catch (CryptographicException ex)
    {
        MessageBox.Show("A …
Run Code Online (Sandbox Code Playgroud)

c# des .net-2.0

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

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

想要更改一个数据库行而不是所有数据库行

我想更新我的数据库的一行.

这是一台ATM机,您首先输入一个卡帐号(它保存此号码以用于不同的表格).然后输入存款金额.问题是它正在更新每一行而不是与该卡相关联的单行.

这是代码:

    sqlCommandDeposit.Connection.Open();
    sqlCommandDeposit.Parameters["@cardNumber"].Value = Class1.cardNumber;

    using (SqlDataReader reader = sqlCommandDeposit.ExecuteReader())
    {

        if (reader.Read())
        {
            balanceDB = decimal.Parse(reader["balance"].ToString());
        }
    }
}
finally
{
    sqlCommandDeposit.Connection.Close();
}

decimal depositAmm = Convert.ToDecimal(textDeposit.Text);
balanceDB = balanceDB + depositAmm;

try
{
    sqlDepositupdate.Connection.Open();
    sqlDepositupdate.Parameters["@cardNumber"].Value = Class1.cardNumber;
    sqlDepositupdate.Parameters["@balanceDB"].Value = balanceDB;

    sqlDepositupdate.ExecuteNonQuery();
    MessageBox.Show("£" + depositAmm + " Successfully Deposited and Deposit Number Saved");
    MessageBox.Show("you have " + "£" + balanceDB + " available");
    buttonClear.Enabled = true;
    buttonExit.Enabled = true;
    buttonMainMenu.Enabled = true;


}

catch (Exception ex)
{ …
Run Code Online (Sandbox Code Playgroud)

c# t-sql visual-studio-2010

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