问题列表 - 第4228页

C#:标准的.Net字符串应该存储在varchar还是nvarchar中?

我们有一个用C#编写的应用程序,使用.NET Framework 3.0或3.5或类似的东西.作为存储,我们使用SQL Server,我们使用Linq 2 SQL与它进行通信.

目前,数据库中的大多数(如果不是全部)文本列都设置为varchar类型(当然,长度不同).

但我开始思考......根据MSDN"字符串类型表示零个或多个Unicode字符的序列." 这是否意味着我们应该真正将这些列更改为nvarchar以便正确存储?或者这是如何工作的?他们最初将它们设置为varchar的原因是因为nvarchar需要两倍的空间(如果我已经正确理解的话).到目前为止,我已经看到它与varchar一起使用,但是我们还没有对异常的外来字符进行过多的测试......

有人可以对此有所了解吗?

c# sql-server unicode types

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

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

.NET中用于个人项目的免费代码覆盖工具

我需要.NET中的免费代码覆盖工具用于个人项目.NCover对于人来说有点贵.

.net code-coverage

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

如何使用单键按键退出Vi编辑器?

因为老老实实

:wq!
Run Code Online (Sandbox Code Playgroud)

打字太多了.

请注意,问题是关于原始Vi(比如FreeBSD附带的Vi)而不是Vim.

vi keyboard-shortcuts

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

在C#中解析大型XML(大小为1GB)的最佳方法是什么?

我有一个1GB的XML文件,想要解析它.如果我使用XML Textreader或XMLDocument,结果很慢,有时会挂起......

c# xml parsing .net-2.0

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

在运行时获取C++对象名称

我可以在运行时获取对象的名称(比如通过RTTI获取对象的类型)吗?我希望对象能够打印其名称.

谢谢.

c++ runtime

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

如何将 IPictureDisp 转换为 System.Drawing.Image

我从 COM 库(Microsoft Office Document Imaging 又名 MODI)收到一个 IPictureDisp 形式的图像,我想将其转换为 System.Drawing.Image 对象。

最好的方法是什么?

目前我正在使用下面的代码,但是它会抛出 NotImplementedException。

internal sealed class IPictureDispHost : AxHost
{
    /// <summary>
    /// Default Constructor, required by the framework.
    /// </summary>
    private IPictureDispHost() : base(string.Empty) { }
    /// <summary>
    /// Convert the image to an ipicturedisp.
    /// </summary>
    /// <param name="image">The image instance</param>
    /// <returns>The picture dispatch object.</returns>
    public new static object GetIPictureDispFromPicture(Image image)
    {
        return AxHost.GetIPictureDispFromPicture(image);
    }
    /// <summary>
    /// Convert the dispatch interface into an image …
Run Code Online (Sandbox Code Playgroud)

c# interop

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

如何为log4net指定常用的应用程序数据文件夹?

我希望log4net将日志文件(使用RollingFileAppender)写入公共应用程序数据文件夹的子文件夹(例如C:\ Documents and Settings\All Users\Application Data\Company\Product\Logs).
但是,在Win XP上,没有指定此文件夹的环境变量.我们有%ALLUSERSPROFILE%,%APPDATA%但没有什么比这更好的了%ALLUSERSAPPDATA%.
以编程方式,我可以使用Environment.SpecialFolder.CommonApplicationData,但我需要将它放在log4net配置中,如下所示:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
   <file value="%ALLUSERSAPPDATA%\Company\Product\Logs\error.log" />
</appender>
Run Code Online (Sandbox Code Playgroud)

好的,我们可以在我们的设置中定义这个,但也许有人提出了一个更好的主意?

logging log4net environment-variables

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

如何将多行组合到Oracle中以逗号分隔的列表中?

我有一个简单的查询:

select * from countries
Run Code Online (Sandbox Code Playgroud)

结果如下:

country_name
------------
Albania
Andorra
Antigua
.....
Run Code Online (Sandbox Code Playgroud)

我想在一行中返回结果,所以像这样:

Albania, Andorra, Antigua, ...
Run Code Online (Sandbox Code Playgroud)

当然,我可以编写一个PL/SQL函数来完成这项工作(我已经在Oracle 10g中完成了),但是对于这个任务是否有更好的,最好是非特定于Oracle的解决方案(或者可能是内置函数) ?

我通常会用它来避免子查询中的多行,所以如果一个人有一个以上的公民身份,我不希望她/他在列表中是重复的.

我的问题是基于SQL Server 2005上的类似问题.

更新:我的功能如下:

CREATE OR REPLACE FUNCTION APPEND_FIELD (sqlstr in varchar2, sep in varchar2 ) return varchar2 is
ret varchar2(4000) := '';
TYPE cur_typ IS REF CURSOR;
rec cur_typ;
field varchar2(4000);
begin
     OPEN rec FOR sqlstr;
     LOOP
         FETCH rec INTO field;
         EXIT WHEN rec%NOTFOUND;
         ret := ret || field || sep;
     END LOOP;
     if length(ret) …
Run Code Online (Sandbox Code Playgroud)

sql oracle pivot concatenation string-aggregation

101
推荐指数
5
解决办法
38万
查看次数

wcf System.ServiceModel.AddressAlreadyInUseException

如果这个问题在stackOverflow上出现两次,请道歉

我试图在Windows Server 2003框上运行wcf服务.我在服务主机调用Open()时收到System.ServiceModel.AddressAlreadyInUseException异常,它告诉我以下错误:

HTTP无法注册URL http:// +:8080/LogoResizer/mex /,因为TCP端口8080正被另一个应用程序使用

我读过我需要使用httpcfg.exe来注册我的命名空间,并且我已经使用了这里的GUI工具来完成它,但我仍然得到上述异常.运行"netstat -a"并不显示在端口8080上侦听的任何内容,并且运行"httpcfg.exe query urlacl"会返回以下注册的命名空间.

C:\ Program Files\Support Tools> httpcfg query urlacl URL:http:// +:80/Temporary_Listen_Addresses /

ACL:D:(A ;; GX ;;; WD)

URL : http://+:8080/LogoResizer/
Run Code Online (Sandbox Code Playgroud)

ACL:D:(A ;; GX ;;; WD)

URL : http://+:8080/LogoResizer/mex/
Run Code Online (Sandbox Code Playgroud)

ACL:D:(A ;; GX ;;; WD)

我的应用程序的配置如下:

<system.serviceModel>
    <bindings>
        <netTcpBinding>
            <binding name="NetTcpBinding_ImageResizerServiceContract" closeTimeout="00:01:00"
                openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
                hostNameComparisonMode="StrongWildcard" listenBacklog="10"
                maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxConnections="10"
                maxReceivedMessageSize="2147483647">
                <readerQuotas maxDepth="2147483647"
                              maxStringContentLength="2147483647"
                              maxArrayLength="2147483647"
                              maxBytesPerRead="2147483647"
                              maxNameTableCharCount="2147483647" />
                <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" /> …
Run Code Online (Sandbox Code Playgroud)

wcf httpcfg.exe

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