问题列表 - 第3170页

SQL Server 2005触发器-如何安全地确定是由UPDATE还是DELETE触发?

我在SQL Server 2005触发器中有以下代码:

在[myTable]上创建触发器[myTrigger]
更新,删除
如
开始

宣告@OperationType VARCHAR(6)
如果存在(从插入中选择1个)
开始
    SET @ OperationType ='更新'
结束
其他
开始
    SET @ OperationType ='删除'
结束

我的问题:@OperationType是否存在未正确填充的情况?EG:表中的数据由一堆UPDATE / DELETE语句更改,但是触发器不是每个触发器都触发一次吗?

您是否有更好的方法来确定触发器是由UPDATE还是DELETE语句触发的?

database triggers sql-server-2005

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

如何使用文件局部变量设置Emacs缓冲区名称?

我希望我的emacs缓冲区具有与文件名不同的名称.我不是每次都手动设置,而是希望根据文件内容自动执行此操作,例如:

//局部变量:
// buffer-name:MyName
//结束:

但这不起作用,因为buffer-name是一个函数,而不是一个变量.我怎样才能做到这一点?

emacs

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

面向对象的数据库是否仍在使用?

很久以前,我听说过Object数据库.酷的概念和所有.现在,随着各地ORM的发生,还有人还在使用任何面向对象的数据库系统吗?它们相关吗?它们实用吗?

database oop object-oriented-database

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

如何检测finally块中的ThreadAbortException?(.净)

我在finally块中有一些关键逻辑(带有空的try块),因为我想保证即使线程被中止也会执行代码.但是,我还想检测ThreadAbortException.我发现在try/catch中包装我的关键try/finally块不会捕获ThreadAbortException.有没有办法检测它?

try {
    try { }
    finally {
        // critical logic
    }
} catch(Exception ex) {
    // ThreadAbortException is not caught here, but exceptions thrown
    // from within the critical logic are
}

.net multithreading

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

实体框架中的类和接口层次结构?

我有两个相关的类,它们共享一个公共接口,并且都存储在同一个底层数据库表中.但是,实体框架生成一个公共类,我真的需要两个不同的类.我该如何解决这个问题?最好使用基类而不是接口吗?如何更改EF模型以提供映射到一个表的两个类?

编辑: AccountType属性确定类的类型; 用户或组.

一些简单的代码:

public interface IAccount
{
    string Name { get; set; }
    AccountType AccountType { get; set; }
}

public class GroupAccount : IAccount
{
    public string Name { get; set; }
    public GroupType GroupType { get; set; }
    public AccountType AccountType { get; set; }
}

public class UserAccount : IAccount
{
    public string Username { get; set; }
    public string Password { get; set; }
    public string Name { get; set; }
    public AccountType AccountType …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework class-hierarchy

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

原位删除元素的最佳方法

我有一组迭代的对象,但是我可以在迭代期间决定现在需要删除其中一个(或多个)对象.

我的代码如下:

if( ! m_Container.empty() )
    {
        for(  typedefedcontainer::iterator it = m_Container.begin();
              it != m_Container.end(); 
              ++it  )
        {
            if( ! ( SomeFunction( (*it), "test", "TEST!", false ))  )
            {
            // If function returns false, delete object.
                m_Container.erase( it );
                AsyncResponseStore::iterator it = m_asyncResponses.begin();
            }

        }


    }
Run Code Online (Sandbox Code Playgroud)

但是当然,当我擦除一个对象时,我得到一个错误:"Map/set iterator not incrementable".有人可以建议一个更好的方法吗?

请参阅: 如果在从开始到结束迭代时调用map元素上的erase()会发生什么?

c++ stl set

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

如何将绘制的圆圈与pygame混合

我正在尝试创建一个像这样的应用程序:

http://www.eigenfaces.com/

基本上用pygame绘制了很多重叠的圆圈.我无法弄清楚如何将圆圈混合成半透明.那就是显示重叠的颜色.到目前为止我的代码是这样的:

import sys, random, time
import pygame
from pygame.locals import *
from pygame import draw

rand = random.randint

pygame.init( )

W = 320
H = 320
size = (W, H)

screen = pygame.display.set_mode(size)

run = True
while 1:

    for event in pygame.event.get():
        if event.type == pygame.KEYDOWN: 
            if event.key == pygame.K_SPACE :
                run = not run
            else:
                sys.exit()
    if run:
        xc = rand(1, W)
        yc = rand(1, H)
        rc = rand(1, 25)

        red = rand(1, 255)
        grn = rand(1, …
Run Code Online (Sandbox Code Playgroud)

python pygame

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

常春藤怎么样:发表作品?

我完全不知道蚂蚁任务常春藤:发布应该如何工作.

我希望我做我的正常构建,它会创建一堆jar文件,然后我会将这些jar推送到(本地)存储库.

如何指定从哪里检索构建的jar,以及它们将如何最终存储在存储库中?

更新:

<target name="publish-local" description="--> Publish Local">
    <ivy:retrieve />
    <ivy:publish resolver="local" pubrevision="${release.version}" status="release" update="true" overwrite="true">
        <artifacts pattern="${dist.dir}/[organisation]-[module].[ext]" />
    </ivy:publish>
</target>
Run Code Online (Sandbox Code Playgroud)

这实际上有效,我之前没有包含检索.

但是我仍然有一些问题,假设我想发布3个罐子,openscada-utils.jar,openscada-utils-sources.jar和openscada-utils-javadocs.jar作为openscada-utils-0.9.2.jar,openscada-utils -0.9.2-sources.jar和openscada-utils-0.9.2-javadocs.jar

我不完全清楚,实际名称是如何组合的,以及我可以指定它们应该得到的名称.(使用上面的片段,jar总是只调用utils.jar).

更新1:

我得到它(有点),但它仍然感觉不对.不知何故,所有教程都关注第三方项目的依赖关系,但对我来说同样重要的一点是处理项目特定的依赖关系.

我有一堆子项目,它们以各种方式相互依赖.考虑常春藤:发布我不清楚如何开始.

  1. 我该如何处理第一个版本?我有一个共同的版本号用于所有子项目,以表明它们属于一起(假设为0.9).因此第一次修订应该是0.9.0,但到目前为止,我的项目中没有任何内容存在于我的存储库中.如何让Ivy分配此修订号.

  2. 在开发过程中,我想再次发布构建的文件,而不更改目前的版本号.

  3. 如果我完成了我的工作,我想将其推送到共享存储库(并将修订版号从0.9.0增加到0.9.1),建议的方法是什么?

  4. 对于实际的版本,我想制作具有依赖关系的发行版,但不知道,我想我可以使用不同的配置.我怎样才能利用这一优势?

java ant build-automation build-process ivy

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

Object.GetType()的性能

我们的应用程序中有很多日志记录调用.我们的记录器采用System.Type参数,因此它可以显示创建调用的组件.有时候,当我们受到打扰时,我们会做以下事情:

class Foo
{
  private static readonly Type myType = typeof(Foo);

  void SomeMethod()
  {
     Logger.Log(myType, "SomeMethod started...");
  }
 }
Run Code Online (Sandbox Code Playgroud)

因为这只需要获取Type对象一次.但是,我们没有任何实际指标.任何人都知道这节省了多少调用this.GetType()每次我们登录?

(我意识到我可以自己完成指标并没有什么大问题,但是嘿,什么是StackOverflow?)

.net c# performance

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

.NET Winforms:运行时可以从我下面处理表单的句柄吗?

目前申报的SendMessage了在PInvoke.net是:

[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(HandleRef hWnd, uint Msg, 
      IntPtr wParam, IntPtr lParam);
Run Code Online (Sandbox Code Playgroud)

注意: hWnd不再是IntPtr,并且已被HandleRef替换.给出了一个非常松散的变化解释:

您可以将"hWnd"替换为"IntPtr"而不是"HandleRef".但是,您冒这样做的风险 - 它可能会导致您的代码因竞争条件而崩溃..NET运行时可以并且将会从您的消息下处理窗口句柄 - 导致各种令人讨厌的问题!

维基有人提出了一个后续问题:

问题:最后一个问题不能用编组来解决,特别是固定吗?

有人回答说:

答:您可以在SendMessage()之后使用GC.KeepAlive(),并将Form对象作为KeepAlive()的参数.

所有这些"将你的形式置于你身下"对我来说似乎很奇怪.SendMessage是一个同步调用.在处理完发送的消息之前,它不会返回.

那么其含义是一种形式手柄可以在被破坏的任何时间.例如:

private void DoStuff()
{
   //get the handle
   IntPtr myHwnd = this.Handle;


   //Is the handle still valid to use?
   DoSomethingWithTheHandle(myHwnd); //handle might not be valid???


   //fall off the function
}
Run Code Online (Sandbox Code Playgroud)

这意味着窗口句柄在我使用它和方法结束的时间之间可能变得无效?


更新一

我理解一旦表单超出范围,它的句柄无效.例如:

private IntPtr …
Run Code Online (Sandbox Code Playgroud)

.net c# windows winapi winforms

14
推荐指数
1
解决办法
2271
查看次数