问题列表 - 第5853页

如何最好地检测XML文件中的编码?

要使用任意编码加载XML文件,我有以下代码:

Encoding encoding;
using (var reader = new XmlTextReader(filepath))
{
    reader.MoveToContent();
encoding = reader.Encoding;
}

var settings = new XmlReaderSettings { NameTable = new NameTable() };
var xmlns = new XmlNamespaceManager(settings.NameTable);
var context = new XmlParserContext(null, xmlns, "", XmlSpace.Default, 
    encoding);
using (var reader = XmlReader.Create(filepath, settings, context))
{
    return XElement.Load(reader);
}
Run Code Online (Sandbox Code Playgroud)

这有效,但打开文件两次似乎有点低效.是否有更好的方法来检测编码,以便我可以这样做:

 1. Open file
 2. Detect encoding
 3. Read XML into an XElement
 4. Close file
Run Code Online (Sandbox Code Playgroud)

xelement encoding xmlreader linq-to-xml

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

在不安装SMTP服务器的情况下发送邮件

我有一个.Net应用程序.我希望这个应用程序向我发送电子邮件.如何在不安装SMTP服务器的情况下实现此目的?

.net c# email smtp

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

如何从一个程序发送信号到另一个程序?

我正在使用消息队列作为2个程序之间的ipc.现在我想使用消息队列将数据从一个程序发送到另一个程序,然后通过SIGINT信号将其发送给它.

我不知道如何将信号从一个程序发送到另一个程序.任何人都可以提供示例代码,如果他们有解决方案.

linux signals

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

如何处理Entity Framework中的"辅助"键

我正在评估对现有模式使用EF - 问题是我无法弄清楚如何在外键不是主表的主键的表之间建立关联.

作为一个例子,a foo可能有许多bars像这样的定义(原谅伪代码):

table foo {
  int foo\_id pk,
  char(10) foo\_code,
  ...
}

table foobar {
  int bar\_id pk,
  char(10) bar\_foo\_code fk(foo.foo\_code),
  ...
}
Run Code Online (Sandbox Code Playgroud)

我缺少什么能够创建foo_foobar关联,因此BarsFoo实体上创建导航属性?

mapping entity-framework foreign-keys

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

仅标记为默认的一条记录的约束

如何在表上设置约束,以便只有一个记录的isDefault位字段设置为1?

约束不是表范围,而是由FormID指定的每组行的一个默认值.

sql sql-server

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

将状态指示符添加到自定义Web部件

我有一个自定义Web部件,它生成一些用户数据.我已经添加了相应的代码来输出标准状态图标和菜单,但这是相当有效的.

我的网页部分的渲染html如下:

<span>  
   <a href="http://mysite/Person.aspx?accountname=USERID">USERNAME</a>&nbsp;   
   <img border="0" height="12" width="12" src="/_layouts/images/blank.gif" onload="IMNRC('USEREMAIL')" id="imnUSERID" ShowOfflinePawn="1" />  
</span> 
Run Code Online (Sandbox Code Playgroud)

显然更换了USERID,USERNAME,USEREMAIL等.

问题是双重的.

1)在IE7中,不会检索存在信息.菜单显示正确但图标不显示,当您将鼠标悬停在间隙上时,下拉菜单不提供IM设置.

2)在IE8 RC1中,状态信息正确返回并显示图标,但下拉列表会在图标上方严重的英寸处显示.(见此截图)

任何有关这些问题的帮助,或者有关向自定义Web部件添加状态的其他提示都将受到极大的欢迎.

进展更新

- 为IE7的"可信站点"添加网页 - 什么都没做 - IE8的兼容性视图没有区别. - 更改为id ="CSRP_id,type = sip"在建议中将代码更改为以下内容:

<span>     
<img class="PresenceImage" src="/_layouts/images/imnhdr.gif" onload="IMNRC('USEREMAIL')" name="imnmark" ShowOfflinePawn="1" id="contact_im,type=sip" />     
</span>
Run Code Online (Sandbox Code Playgroud)

以上所有更新均未成功.

sharepoint web-parts sharepoint-2007

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

背景颜色的不透明度,但不是文本

如何使跨浏览器(包括Internet Explorer 6)的透明度在一段div时间后文本保持不透明?

我需要在不使用任何库(如jQuery等)的情况下完成它.(但是如果你知道一个库那样做我很想知道,所以我可以查看他们的代码).

css opacity

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

如何将TimeSpan序列化为XML

我试图将.NET TimeSpan对象序列化为XML,但它无法正常工作.一个快速谷歌建议,虽然TimeSpan是可序列化的,但XmlCustomFormatter它不提供将TimeSpan对象转换为XML或从XML 转换对象的方法.

一种建议的方法是忽略TimeSpan序列化,而是序列化结果TimeSpan.Ticks(并new TimeSpan(ticks)用于反序列化).一个例子如下:

[Serializable]
public class MyClass
{
    // Local Variable
    private TimeSpan m_TimeSinceLastEvent;

    // Public Property - XmlIgnore as it doesn't serialize anyway
    [XmlIgnore]
    public TimeSpan TimeSinceLastEvent
    {
        get { return m_TimeSinceLastEvent; }
        set { m_TimeSinceLastEvent = value; }
    }

    // Pretend property for serialization
    [XmlElement("TimeSinceLastEvent")]
    public long TimeSinceLastEventTicks
    {
        get { return m_TimeSinceLastEvent.Ticks; }
        set { m_TimeSinceLastEvent = new TimeSpan(value); }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# serialization timespan

200
推荐指数
6
解决办法
5万
查看次数

如何使用mono将.NET Windows服务应用程序迁移到Linux?

使用mono将.NET Windows服务迁移到Linux的最佳方法是什么?我一直在努力避免将应用程序作为计划命令执行.

是否有可能像行为一样获得服务/系统守护进程(在linux中)?

.net c# linux mono .net-2.0

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

g ++不能在Windows命令提示符下工作.Cygwin已安装

我已经安装了Eclipse和CDT(需要在eclipse CDT中使用C/C++),以及安装Cygwin以便我可以编译我的文件.

在环境变量中,我将Path设置为包含以下内容:"C:\ cygwin\bin;"

g ++,make和GDC都是通过Cygwin安装的.我通过在bin文件夹中搜索它们来确保这一点 - 它们都在那里.

如果我在windows命令提示符下输入"make",则会出现:

make: *** No targets specified and no makefile found.  Stop.
Run Code Online (Sandbox Code Playgroud)

如果我在windows命令提示符下输入"g ++"或"gdc",则会出现(或类似):

'g++' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

所以,换句话说make是工作但其余的不是..但它们在同一个bin文件夹中!让我完全糊涂了.

如果我尝试打开Cygwin Bash Shell,g ++,make和GDC都可以在那里工作.

但是,我需要它在命令提示符下工作,以便Eclipse能够编译我在IDE中编写的程序.

如果你知道为什么会这样,请告诉我.

c++ command-line cygwin g++ eclipse-cdt

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