小编Jon*_*oln的帖子

始终复制到输出目录不起作用

我有一个简单的控制台项目,我正在阅读两个Excel文件.Excel文件包含在项目中("添加现有项目"),我用"复制到输出目录"标记它们.但是,在调试/运行代码时,它们不会复制到调试目录.

我觉得我忘记了一些微不足道的事情.我还需要做些什么?

debugging visual-studio

44
推荐指数
5
解决办法
3万
查看次数

是否有人在SQL Server中使用Service Broker?

当我参加Microsoft的SQL Server 2008演示时,他们快速了解了我们正在使用的功能.事实证明,在整个演讲厅,我的公司是唯一使用Service Broker的公司.这让我感到很惊讶,因为我认为会有更多的人使用它.

我在SB方面的经验是,它的工作做得很好,但管理非常困难,而且很难得到概述.

那么,您考虑过使用Service Broker吗?如果没有,为什么不呢?你有没有去过MSMQ?SQL Server 2008中是否有任何可以让您考虑使用Service Broker的内容.

sql-server sql-server-2005 service-broker sql-server-2008

22
推荐指数
4
解决办法
6276
查看次数

为log4net配置自定义事件日志

我正在使用log4net进行日志记录(呃!).使用EventLogAppender,我可以配置我的应用程序名称,以便我的事件将显示在Application /"My Application Name"事件日志中.但是,我想将事件记录到"其他事件日志"/"我的应用程序名称".我该如何配置?

当前配置:

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
    <applicationName value="My application Name" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
    </layout>
</appender>
Run Code Online (Sandbox Code Playgroud)

对于EventLogInstaller,代码如下所示:

eventLogInstaller.Log = "Some other event log"; // Default "Application"
eventLogInstaller.Source = "My application name";
Run Code Online (Sandbox Code Playgroud)

.net c# log4net event-log

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

SQL - 按列表顺序排序

我有以下查询返回基于逗号分隔列表的行

Select * from Table where RecordID in (22,15,105,1,65,32)
Run Code Online (Sandbox Code Playgroud)

我希望此查询的结果按列表中ID的顺序返回.这可能与SQL有关吗?

提前致谢

sql sql-server list

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

我应该如何从实体框架4.1中的存储过程返回一个int?

我正在使用Entity Framework 4.1并且有时需要调用存储过程.其中一些返回int作为返回值.例如

CREATE PROCEDURE ...
...
INSERT INTO ...
SELECT @@Identity
Run Code Online (Sandbox Code Playgroud)

(更新:删除返回值,不相关.我们将返回身份)

我的respository类中有以下代码:

var orderNo = context.Database.SqlQuery<int>("EXEC myProc").Single();
Run Code Online (Sandbox Code Playgroud)

这失败并显示错误消息 The specified cast from a materialized 'System.Decimal' type to the 'System.Int32' type is not valid.

如果我将上面的代码更改为

var orderNo = context.Database.SqlQuery<decimal>("EXEC myProc").Single();
Run Code Online (Sandbox Code Playgroud)

一切正常.

现在,我认为我应该能够返回一个int.这样做的正确方法是什么?

c# stored-procedures sql-server-2008-r2 entity-framework-4.1

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

合并连续的日期范围

使用SQL Server 2008 R2,

我正在尝试将日期范围组合到最大日期范围,因为一个结束日期与下一个开始日期相邻.

数据是关于不同的工作.一些员工可能已经结束了他们的工作,并在以后重新加入.那些应该算作两种不同的工作(例如ID 5).有些人有不同类型的工作,彼此追逐(结束和开始时间),在这种情况下,它应被视为一个就业(例如ID 30).

尚未结束的就业期限为无效的终止日期.

一些例子可能具有启发性:

declare @t as table  (employmentid int, startdate datetime, enddate datetime)

insert into @t values
(5, '2007-12-03', '2011-08-26'),
(5, '2013-05-02', null),
(30, '2006-10-02', '2011-01-16'),
(30, '2011-01-17', '2012-08-12'),
(30, '2012-08-13', null),
(66, '2007-09-24', null)

-- expected outcome
EmploymentId StartDate   EndDate
5            2007-12-03  2011-08-26
5            2013-05-02  NULL
30           2006-10-02  NULL
66           2007-09-24  NULL
Run Code Online (Sandbox Code Playgroud)

我一直在尝试不同的"孤岛"技术,但未能破解这一技术.

sql t-sql sql-server-2008-r2

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

使用SQL Server插入记录后获取autoincremnt值

我正在使用连接到SQL Server数据库的VB.NET开发一个项目

在这个项目中,我需要立即将记录插入数据库后获取名为"ID"的列的值.

感谢名单.

sql-server auto-increment

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

如何在不同的数据库上重放SQL事件探查器跟踪?

我在生产服务器上为特定数据库捕获了一个跟踪(模板:tsql_replay)(按数据库名称过滤).我想在我们的测试服务器上重播它,但当然测试服务器上的数据库ID是不同的.

到目前为止,我已经尝试将跟踪文件加载到表中并使用更新查询修改databaseid(请参阅下文),但是在尝试重放时,Profiler会给我一个错误(缺少事件等).如果我直接打开跟踪文件,它允许我重放它.所以不知何故,无论是加载到表中还是更改数据库ID都会让人感到困惑.

捕获重放跟踪的正确过程是什么,更改数据库应该重播?

select * into trace_table
from fn_trace_gettable('f:\trace\trace100222.trc', default)
go
update trace_table
set databaseid = 47
where databaseid = 16
Run Code Online (Sandbox Code Playgroud)

sql-server profiler trace sql-server-2008

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

html5中的音频无法在FF4/Safari中运行

我的html5文档中有这个音频链接:

   <audio 
      src="http://sverigesradio.se/topsy/ljudfil/3017771.m4a" 
      type="audio/mp4" 
      controls="true" 
      preload="metadata" 
      title="Senaste sändningen från Radiosporten">
   Senaste sändningen från Radiosporten</audio>
Run Code Online (Sandbox Code Playgroud)

它在chrome中正确渲染,但在FF4中它首先闪烁控件然后我得到一个大的"X".在safari中,它似乎在阅读元数据时挂起.

我的音频标签或音频文件有问题吗?重定向是一个问题吗?

firefox html5 html5-audio

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

从Outlook导出所有联系人作为vcards

所以,我想从Outlook导出我的所有联系人作为vcards.如果我谷歌,我得到了一堆共享软件程序,但我想要一些免费的东西.

如果我自己编写代码,我想我应该使用Microsoft.Office.Interop.Outlook程序集.有没有人已经编码将ContactItems转换为vcards?

编辑:我以完全不同的方式解决了它,请参阅下面的答案,但我已将dok1.myopenid.com的答案标记为已接受,因为它回答了我原来的问题.

.net c# outlook vcf-vcard

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

如何在消费时将项目添加到集合中?

下面的示例抛出InvalidOperationException,"Collection已被修改;枚举操作可能无法执行".执行代码时.

var urls = new List<string>();
urls.Add("http://www.google.com");

foreach (string url in urls)
{
    // Get all links from the url
    List<string> newUrls = GetLinks(url);

    urls.AddRange(newUrls); // <-- This is really the problematic row, adding values to the collection I'm looping
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能以更好的方式重写这个?我猜一个递归的解决方案?

.net c#

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

在LINQ-to-SQL中将URI映射到String-field

我正在尝试使用LINQ将URI作为字符串存储在数据库中.

[Column(Name = "Url", DbType = "nvarchar(255)")]
public Uri Url
{
    get
    {
        return new Uri(_url);
    }
    set
    {
        _url = value.AbsoluteUri;
    }
}

private string _url;
Run Code Online (Sandbox Code Playgroud)

但是,当尝试使用以下代码获取数据时,这很好地映射到我的数据库设计:

int id = 3;
_serie = new DataContext(connString).GetTable<Serie>();
var serie = _serie.FirstOrDefault(s => s.Id == id);
Run Code Online (Sandbox Code Playgroud)

在最后一行,我得到一个例外

System.InvalidCastException: Invalid cast from System.String to System.Uri etc
Run Code Online (Sandbox Code Playgroud)

我需要做什么来正确处理我的代码中的URI,但在我的数据库中存储它是一个nvarchar(255)?这似乎很简单,但我无法弄清楚我做错了什么.

c# uri linq-to-sql columnattribute

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

TimeSpan和DateTime的格式化字符串之间的不同行为

在今天进行编码时,我注意到时间跨度和格式化字符串有些奇怪.我试图打印时间跨度,例如01:03:37作为1:03:37(不数小时的前导0).所以我使用了格式字符串h:mm:ss.然而,这给了我一个前导0.如果我将TimeSpan转换为DateTime并再次做同样的事情,h格式化字符串按预期工作.

一个示例控制台程序:

class Program
{
    static void Main(string[] args)
    {
        var time = new TimeSpan(01, 03, 37);

        var culture = new CultureInfo("sv-SE");

        Thread.CurrentThread.CurrentCulture = culture;
        Thread.CurrentThread.CurrentUICulture = culture;

        Console.WriteLine(time.ToString());

        Console.WriteLine(string.Format(culture, "{0:h:mm:ss}", time));
        Console.WriteLine(string.Format(culture, "{0:hh:mm:ss}", time));

        Console.WriteLine((new DateTime(time.Ticks)).ToString("h:mm:ss", culture));
        Console.WriteLine((new DateTime(time.Ticks)).ToString("hh:mm:ss", culture));

        Console.ReadKey();
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

01:03:37
01:03:37  // <-- expected: 1:03:37
01:03:37
1:03:37
01:03:37
Run Code Online (Sandbox Code Playgroud)

为什么TimeSpan和DateTime的表现不同?

c# datetime timespan

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