SqlConnection在事务中"登记"是什么意思?它只是意味着我在连接上执行的命令将参与事务吗?
如果是这样,在什么情况下SqlConnection会自动登记在环境TransactionScope事务中?
查看代码注释中的问题.我对每个问题的答案的猜测都在括号中的每个问题之后.
using (TransactionScope scope = new TransactionScope())
using (SqlConnection conn = ConnectToDB())
{
// Q1: Is connection automatically enlisted in transaction? (Yes?)
//
// Q2: If I open (and run commands on) a second connection now,
// with an identical connection string,
// what, if any, is the relationship of this second connection to the first?
//
// Q3: Will this second connection's automatic enlistment
// in the current transaction scope cause the transaction to …Run Code Online (Sandbox Code Playgroud) 是否可以使用CSS和两个内联块(或其他)DIV标签而不是使用表?
表格版本为此(添加了边框以便您可以看到它):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<table style="width:100%;">
<tr>
<td style="border:1px solid black;width:100px;height:10px;"></td>
<td style="border:1px solid black;height:10px;"></td>
</tr>
</table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它会生成一个左侧列,其中包含固定宽度(不是百分比宽度),右侧列会扩展以填充线上的剩余空间.听起来很简单吧?此外,由于没有任何东西被"浮动",因此父容器的高度适当地扩展以包含内容的高度.
--BEGIN RANT--
我已经看到了具有固定宽度侧柱的多列布局的"清晰修复"和"圣杯"实现,它们很糟糕并且它们很复杂.它们反转元素的顺序,它们使用百分比宽度,或者它们使用浮点数,负边距,并且"左","右"和"边距"属性之间的关系是复杂的.此外,布局是亚像素敏感的,因此即使添加单个边框,填充或边距像素也会破坏整个布局,并将整个列包装发送到下一行.例如,即使你尝试做一些简单的事情,例如将4个元素放在一行上,每个宽度设置为25%,舍入错误也是一个问题.
--END RANT--
我尝试过使用"inline-block"和"white-space:nowrap;",但问题是我无法获得第二个元素来填充线上的剩余空间.将宽度设置为"width:100% - (LeftColumWidth)px"在某些情况下会起作用,但实际上不支持在width属性中执行计算.
我想要一个有两列的容器.细节:
容器应该能够调整大小(通过调整浏览器窗口大小)到最小宽度(前面指定)或更大的宽度而不破坏布局."Breaking"将包括左列改变大小(记住它应该具有固定的像素宽度),右列包裹在左侧,滚动条出现,右列中的块元素未能占用整个列宽并且通常任何上述规范都不能保持真实.
如果使用浮动元素,则右列不应该在左侧包裹,容器将无法包含两列(通过剪切列的任何部分或允许列的任何部分溢出其边界) ),或者那个滚动条会出现(所以我厌倦了建议使用溢出以外的任何东西:隐藏以触发浮动元素遏制).将边框应用于列不应该破坏布局.列的内容,尤其是右列的内容,不应破坏布局.
似乎有一个简单的基于表格的解决方案,但在任何情况下它都会失败.例如,在Safari中,如果容器太小,我的固定宽度左列将收缩,而不是保持我指定的宽度.似乎应用于TD元素的CSS宽度指的是最小宽度,这样如果在其中放置更大的东西,它将扩展.我尝试过使用table-layout:fixed; 没有帮助.我还看到了表示右列的TD元素不会扩展以填充剩余区域的情况,或者它会出现(例如第三列1px宽将被一直推到右侧),但是在右列周围放置一个边框将显示它仅与其内联内容一样宽,并且宽度设置为100%的块级元素不会填充列的宽度,而是匹配内联内容的宽度(即TD的宽度似乎完全取决于内容).
我看到的一个可能的解决方案太复杂了; 我不在乎IE6,只要它适用于IE8,Firefox 4和Safari 5.
给出类似的泛型类定义
public class ConstrainedNumber<T> :
IEquatable<ConstrainedNumber<T>>,
IEquatable<T>,
IComparable<ConstrainedNumber<T>>,
IComparable<T>,
IComparable where T:struct, IComparable, IComparable<T>, IEquatable<T>
Run Code Online (Sandbox Code Playgroud)
如何为它定义算术运算符?
以下内容无法编译,因为'+'运算符不能应用于类型'T'和'T':
public static T operator +( ConstrainedNumber<T> x, ConstrainedNumber<T> y)
{
return x._value + y._value;
}
Run Code Online (Sandbox Code Playgroud)
正如您所见,泛型类型'T'受'where'关键字约束,但我需要对具有算术运算符的数字类型(IArithmetic?)进行约束.
'T'将是一个原始数字类型,如int,float等.这些类型是否存在'where'约束?
文档和语言在VS 2008和2010之间有所不同:
在内部,文本存储为Char对象的只读集合,每个Char对象代表一个以UTF-16编码的Unicode字符.... 字符串的长度表示字符数,无论字符是否由Unicode代理项对形成.要访问字符串中的各个Unicode代码点,请使用StringInfo对象.- http://msdn.microsoft.com/en-us/library/ms228362%28v=vs.90%29.aspx
在内部,文本存储为Char对象的顺序只读集合.... 字符串的Length属性表示它包含的Char对象的数量,而不是Unicode字符的数量.要访问字符串中的各个Unicode代码点,请使用StringInfo对象.- http://msdn.microsoft.com/en-us/library/ms228362%28v=VS.100%29.aspx
两种情况下使用的语言都没有明确区分"字符","Unicode字符","字符类","Unicode代理项对"和"Unicode代码点".
VS2008文档中的语言声明"字符串表示字符数,无论字符是否由Unicode代理项对形成"似乎将"字符"定义为可能是Unicode代理项对的结果的对象,这表明它可能代表一个4字节的序列而不是一个2字节的序列.它还特别指出一个"char"对象以UTF-16编码,这表明它可以代表一个代理对(4个字节而不是2个字节).我很确定这是错的.
VS2010文档更加精确.它区分了"char"和"Unicode character",但不区分"Unicode character"和"Unicode code point".如果代码点引用代理对的一半,并且"Unicode字符"代表完整对,则"Char"类的名称不正确,并且根本不引用"Unicode字符"(他们声明它不),它真的是一个Unicode代码点.
那么以下两个陈述都是真的吗?(是的,我认为.)
我的Web应用程序通常位于IIS中根目录的子目录中.假设子目录是"app"
当我尝试在Visual Studio中调试它时,路径始终以localhost为根,没有子目录.这会扰乱我在应用程序中的路径.
当我尝试从改变项目URL的形式http://localhost:port/,以 http://localhost:port/app它只是说"无法创建虚拟目录".好吧,这是它第一次说的,直到我从application.config文件中删除了应用程序条目,然后它成功了.
当我尝试"覆盖应用程序根URL"到同一件事时,它只是不起作用.它要么得到一个错误500.0内部服务器错误,或者在某些情况下它就像它将应用程序的web.config文件应用于根目录和虚拟子目录,因为它给出了一个错误,我正在尝试添加一个模块已被添加(可能在根目录中).
我已尝试在IIS Express的application.config中编辑项目的设置,但似乎没有设置组合.
我不明白为什么visual studio将项目置于IIS Express根目录下,当它知道该项目是在子目录中部署到IIS时.我认为它应该默认匹配目录结构.
这就是现在的样子:
<site name="app" id="5">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/app" physicalPath="C:\Users\username\Desktop\wwwroot\app" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:3056:localhost" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
如果我将应用程序路径更改为"/ app",则它会给出错误500.19,说配置无效.如果我执行相同操作并删除虚拟目录标记,则无法完全启动IIS Express.
我正在基于NetStream构建一个基于Flash的视频播放器,我需要测试的是一个正常运行的RTMP网址,但我无法通过谷歌在整个互联网上找到一个.
是否有人知道我可以用来测试这个东西的任何有效的样本rtmp流及其URL?
使用该object.ReferenceEquals方法使用时会有额外的开销((object)obj1 == (object)obj2)吗?
在第一种情况下,将涉及静态方法调用,并且在两种情况下都涉及到对象的某种形式的转换.
即使编译器平衡了那些方法,那么不等式呢?
(object)obj != null
Run Code Online (Sandbox Code Playgroud)
相比于...
!object.ReferenceEquals(obj,null)
Run Code Online (Sandbox Code Playgroud)
我想在某些时候,会在!=运算符内或者应用于ReferenceEquals方法的结果时发生逻辑否定.你怎么看?
还有可读性问题需要考虑.在检查相等性时,ReferenceEquals似乎更清晰,但是对于不平等,可能会错过!前面的内容object.ReferenceEquals,而!=第一个变体中很难忽略.
这看起来像是一项不可能的任务.绝对没有我找到的作品.问题是如何干净地关闭以Process.Start启动的控制台应用程序,该控制器应用程序在没有控制台窗口且没有使用shell执行的情况下启动:( ProcessStartInfo.CreateNoWindow = true; ProcessStartInfo.UseShellExecute = false;).
如果它接收到ctrl-c或ctrl-break信号,那么正在启动的应用程序将"干净地"关闭,但似乎没有办法发送一个有效的应用程序(特别是GenerateConsoleCtrlEvent).
任何能够提供接受"Process"对象的代码的人都将被标记为答案,该代码以上述参数开始,这些对象导致已启动进程的干净关闭而不影响调用进程.使用7z.exe(7-zip归档程序)作为示例控制台应用程序,它开始压缩大文件,如果没有干净地终止,将留下损坏的未完成文件.
直到有人提供了通向功能示例的功能例子或代码,这个问题没有答案.我见过几十个人在网上问这个问题和几十个答案,但都没有..NET似乎不支持干净地关闭控制台应用程序给定其进程ID,考虑到它是从.NET进程对象开始的,这很奇怪.部分问题是无法在新进程组中创建进程,这使得使用GenerateConsoleCtrlEvent无用.必须有一个解决方案.
我想要这个HTML ...
<ol style="list-style:decimal;">
<li>Apples</li>
<li>Oranges</li>
</ol>
Run Code Online (Sandbox Code Playgroud)
......像这样呈现
Q1.苹果
Q2.桔子
换句话说,我希望自动生成的数字以静态字符串"Q"为前缀.
我试过像这样的CSS:
ol li:before
{
content:"Q";
}
Run Code Online (Sandbox Code Playgroud)
但这产生了这个:
我也尝试过使用"list-style:numbers inside;",但这只是将列表向右移动,结果相同.我找不到以任何方式引用自动生成的数字元素以向其添加CSS样式信息的方法.这看起来像是一个简单,常见的场景,但我找不到任何方法用简单的CSS(没有CSS计数器,JavaScript等)来实现它.
c# ×4
css ×3
.net ×2
html ×2
ado.net ×1
asp.net ×1
break ×1
coding-style ×1
debugging ×1
equality ×1
fixed-width ×1
generics ×1
html-lists ×1
layout ×1
math ×1
performance ×1
prefix ×1
process ×1
readability ×1
resizable ×1
rtmp ×1
sample ×1
sqlcommand ×1
string ×1
unicode ×1