我和同事正在讨论这个问题,我们无法达成协议,所以我想得到你的想法.我对此有自己的看法,但我不会为你破坏它.
我应该何时返回SOAP错误,何时应返回具有错误信息的结果对象?假设这是一个可以被各种系统(.NET,Java,等等)使用的通用Web服务.结果对象将具有isError标志,errorType(类似于特定的异常类型)和消息.
有些要考虑的要点:
文章链接有效.即使听起来我想要你的意见,请坚持事实(因为y和z,x更好)
将记录插入带有标识列的表时,可以使用SCOPE_IDENTITY()来获取该值.在存储过程的上下文中,这将是返回标识值的推荐方法:
SET @RETURN_VALUE = SCOPE_IDENTITY()
SELECT SCOPE_IDENTITY()
各有利弊吗?
我知道接口是契约,任何更改(甚至添加)都会破坏任何相关代码.但是,我可以发誓我曾经读过一些最近的.NET版本(3,3.5 ??)添加了一个可以应用于新接口成员的新属性.此属性允许版本控制和/或使成员可选.它应该是这样的:
interface ITest
{
void MethodOne();
[InterfaceVersion(2)]
void MethodTwo();
}
Run Code Online (Sandbox Code Playgroud)
我为此寻找高低,但似乎无法找到它.我想知道我是否只是误解了我认为我读过的东西而且没有这样的东西.有人有任何见解吗?
这是https://serverfault.com/questions/102098/powershell-script-showing-commands-run的副本.我认为在这里提出这个问题会更合适.
我正在玩PowerShell脚本,他们工作得很好.但是,我想知道是否还有任何方法可以显示所有运行的命令,就像你自己手动输入它们一样.这与批处理文件中的"echo on"类似.我查看了PowerShell命令行参数cmdlet,但我没有找到任何明显的参数.
免责声明:我知道IDisposable
在处理非托管资源时应该实施.其余的代码应该是确定性的,并且using (...) { }
(相当于try {} finally { Dispose(); }
)保证尽快清理.此外,GC 不会调用Dispose()
,因此推荐的模式是覆盖Finalize()
随后调用的方法(使用析构函数语法在C#中)Dispose()
.GC通常会调用Finalize()
(除非GC.SuppressFinalize()
被调用).
问题:所以现在我已经解决了这个问题,我有一个奇怪的场景,using (SqlConnection...) { }
由于我无法控制代码,我无法做到这一点.我通常可以做一个确定性的Dispose()
,但不能保证.我使用Reflector进行反汇编SqlConnection
并看到它使用Dispose(),但除非我是盲目的,否则没有终结器/析构函数(Finalize()
或~SqlConnection()
).这是否意味着GC不会"清理"(发送回池)连接在奇怪的情况下我不能?我找不到任何确定的东西......
有很多示例显示如何动态设置iframe
其内容的高度.这对我来说很完美.我现在面临的问题是内容可以在不触发的情况下改变大小onload
(想想隐藏/可扩展div
的).
有没有办法检测iframe
内容的大小何时发生变化?这是在同一个域,没有jQuery,请.
我对我计划签入的代码做了一些更改.我实际上需要分支然后提交这些更改.在不丢失数据的情况下执行此操作的正确方法是什么(我将进行备份)?请注意,我不仅更改了文件; 我也做过重命名.我想第一次做对,因此我在这里问.
我有一些C#代码(让我们称之为"脚本")我在运行时编译.它使用我的主程序中的接口来访问其功能.编译完成后我就CompilerResults.CompiledAssembly
可以了CreateInstance(Type)
.
一旦我完成了使用脚本,我想完全卸载.据我所知,如果我创建一个单独的应用程序域,我只能这样做:将 DLL加载到单独的AppDomain中
我有一些与我的实施有关的问题:
ReferencedAssemblies.Add(typeof(Interface).Assembly.Location)
在编译之前正在做的事情.CompilerParameters GenerateInMemory=true
,还是必须将其保存在某个地方?如果我有类似的东西:
object value = null;
Foo foo = new Foo();
PropertyInfo property = Foo.GetProperties().Single(p => p.Name == "IntProperty");
property.SetValue(foo, value, null);
Run Code Online (Sandbox Code Playgroud)
然后foo.IntProperty
设置为0
,即使value = null
.看起来它正在做类似的事情IntProperty = default(typeof(int))
.我想抛出一个InvalidCastException
if IntProperty
不是"可以为空"的类型(Nullable<>
或引用).我正在使用Reflection,所以我不提前知道类型.我该怎么做呢?
c# ×4
.net ×1
appdomain ×1
assemblies ×1
codedom ×1
command ×1
default ×1
echo ×1
finalizer ×1
idisposable ×1
iframe ×1
interface ×1
javascript ×1
powershell ×1
real-time ×1
reflection ×1
soapfault ×1
sql-server ×1
svn ×1
versioning ×1
web-services ×1
windows ×1