小编Mal*_*ist的帖子

揭露潜在控制的事件

我在自定义控件中有一个组合框.如何向实现我的自定义控件的任何人/事物公开其中的特定事件,例如SelectedIndexChanged或KeyPress等?

c# user-controls winforms

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

使用expect将密码传递给ssh

如何使用expect将密码发送到ssh连接.

说密码是p @ ssword,ssh命令是ssh me@127.0.0.1

如果想要输入密码,我该怎么做呢?

me@127.0.0.1密码:

使用SSH密钥对的正确操作不是一个选项,因为我必须使用ssh(scp)将密钥放在服务器上,这会要求输入密码.

ssh cygwin expect

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

设计者必须创建一个......的实例,因为该类型被声明为abstract

Visual Studio中抱怨:警告1名设计者必须创建类型"RentalEase.CustomBindingNavForm"的一个实例,但它不能因为类型声明为抽象的.

Visual Studio不允许我访问表单的Designer.该类已经实现了CustomBindingNavForm中的所有抽象方法.CustomBindingNavForm提供了一些具体和抽象的函数.

有没有解决的办法?

这是班级:

 public abstract class CustomBindingNavForm : SingleInstanceForm {     

        //Flags for managing BindingSource
        protected bool isNew = false;
        protected bool isUpdating = false;

        /// <summary>
        /// This is so that when a new item is added, it sets isNew and firstPass to true. The Position Changed Event will look for
        /// firstPass and if it is true set it to false. Then on the next pass, it will see it's false and set isNew to …
Run Code Online (Sandbox Code Playgroud)

.net c# abstract winforms

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

如何使用T-SQL的Exists关键字?

我有一个查询,我想作为子查询运行,将返回一组FK.有了它们,我想只返回具有匹配键的行.

子查询:

SELECT ID 
FROM tblTenantTransCode 
WHERE
    tblTenantTransCode.CheckbookCode = 
      (SELECT ID FROM tblCheckbookCode WHERE Description = 'Rent Income')
Run Code Online (Sandbox Code Playgroud)

这将返回所有具有与租金收入匹配的支票簿代码的交易代码

现在我想选择所有事务,其事务代码与子查询中返回的ID匹配.我已经做到这一点,但SQL Server抱怨语法错误.我怎样才能做到这一点?

完整查询:

SELECT * 
FROM tblTransaction
WHERE
    tblTransaction.TransactionCode IN 
      (SELECT ID FROM tblTenantTransCode 
       WHERE tblTenantTransCode.CheckbookCode = 
           (SELECT ID FROM tblCheckbookCode WHERE Description = 'Rent Income'))
Run Code Online (Sandbox Code Playgroud)

表:

tblCheckbookCode  
   ID  
   Description  
   Other Info  

tblTenantTransCode  
   ID  
   CheckbookCode <-- fk we're looking for   
                     in the tblCheckbookCode.   
                     We're selecting only checkbook codes   
                     that have the Description 'Rent Income'  
   Other Info  

tblTransactions  
   ID  
   TransactionCode <-- fk …

sql t-sql sql-server

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

在UI中执行具有业务逻辑的单元测试数据库应用程序

我自己管理一个相当大的应用程序(50k +代码行),它管理一些相当重要的业务操作.为了简单描述这个程序,我想说它是一个花哨的UI,能够显示和更改数据库中的数据,它管理着大约1,000个租赁单元,大约3k租户和所有财务.

当我进行更改时,因为它的代码库太大了,我有时会在其他地方破坏某些东西.我通常通过浏览我在功能级别更改的内容来测试它(即我运行程序并通过UI工作),但我无法测试每种情况.这就是我想开始进行单元测试的原因.

但是,这不是一个真正的三层程序,它具有数据库层,业务层和UI层.很多业务逻辑都是在UI类中执行的,很多事情都是在事件上完成的.为了使事情复杂化,一切都是数据库驱动的,我还没有看到(到目前为止)关于如何对数据库交互进行单元测试的好建议.

如何开始使用此应用程序的单元测试是一种好方法.记住.我以前从未做过单元测试或TDD.我是否应该重写它以从UI类中删除业务逻辑(很多工作)?或者,还有更好的方法?

c# database unit-testing

35
推荐指数
6
解决办法
1814
查看次数

在新线程上运行简单函数的最佳方法?

我有两个函数,我想在不同的线程上运行(因为它们是数据库的东西,它们不是立即需要的).

功能是:

            getTenantReciept_UnitTableAdapter1.Fill(rentalEaseDataSet1.GetTenantReciept_Unit);
            getTenantReciept_TenantNameTableAdapter1.Fill(rentalEaseDataSet1.GetTenantReciept_TenantName);
Run Code Online (Sandbox Code Playgroud)

在javascript中,我知道我可以创建一个匿名函数并在一个新线程上使用这样的东西很容易地调用它:

setTimeout(new function(){doSomethingImportantInBackground();}, 500);
Run Code Online (Sandbox Code Playgroud)

在C#中有这样的东西吗?

.net c# multithreading anonymous-function

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

从十六进制数中获取Windows系统错误代码标题/说明

我正在使用p/invoke搞乱一些windows函数.偶尔,我得到的错误代码不是ERROR_SUCCESS(这么奇怪的名字).

有没有办法在程序中查看这些内容?例如,如果我收到错误1017.我可以告诉用户

系统已尝试将文件加载或还原到注册表中,但指定的文件不是注册表文件格式.(ERROR_NOT_REGISTRY_FILE:0x3F9)

代替

错误代码:1017

.net c# windows pinvoke

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

为什么版本控制文件系统如此之少?

我做了一些关于版本控制文件系统的文献研究.版本控制在早期的操作系统中已经很普遍,例如有影响但几乎被遗忘的不兼容分时系统(ITS)和TENEX.OpenVMS是TENEX的继承者,似乎仍然在特殊应用程序中使用,它仍然支持版本控制.我发现了一些带有版本控制的实验和历史文件系统(参见ext3cow FAQ).但默认情况下,主要操作系统(Linux,Windows,Mac OS)都不支持版本控制.

为什么现代操作和文件系统不支持40年前可用的功能?当然,您可以以某种方式破解版本到您的系统中,但这应该支持最基本的级别,对应用程序是透明的.只是为了澄清:日记和快照设施(例如Apple的TimeMachine)是一样的.文件系统级别的版本控制意味着:修改文件的每个进程都会自动触发创建可以直接访问后续文本的新版本(例如撤消进程).您可以使用copy-on-write以低成本实现此功能.

我发现版本控制文件系统的唯一现代应用是他们几个月前推出的Amazon S3版本.为什么版本控制文件系统如此之少?计算机系统的进展如何?版本化是一个坏主意吗?

versioning filesystems

31
推荐指数
1
解决办法
9168
查看次数

如何自动调整标签的高度而不是宽度

我有一个Panel我正在以编程方式创建; 另外我要添加几个组件.

其中一个组件是Label包含用户生成内容的组件.

我不知道标签应该有多高,但它确实有一个固定的宽度.

如何设置高度以便显示所有文本而不更改宽度?

.net c# winforms

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

为什么Visual Studio使用xchg ax,ax

我正在查看我的程序的解散(因为它崩溃了),并注意到很多

xchg    ax, ax
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索它,发现它本质上是一个小鸟,但为什么visual studio会做一个xchg而不是noop?

该应用程序是由Visual Studio编译的C#.NET3.5 64位应用程序

assembly code-generation x86-64

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