问题列表 - 第688页

如何在C#中检查对象是否可序列化

我正在寻找一种简单的方法来检查C#中的对象是否可序列化.

我们知道,通过实现ISerializable接口或将[Serializable]放在类的顶部,可以使对象可序列化.

我正在寻找的是一种快速检查方法,而无需反映类以获得它的属性.接口可以快速使用is语句.

使用@Flard的建议这是我提出的代码,尖叫是有更好的方法.

private static bool IsSerializable(T obj)
{
    return ((obj is ISerializable) || (Attribute.IsDefined(typeof (T), typeof (SerializableAttribute))));
}
Run Code Online (Sandbox Code Playgroud)

或者甚至更好地获取对象的类型,然后在类型上使用IsSerializable属性:

typeof(T).IsSerializable
Run Code Online (Sandbox Code Playgroud)

请记住,这似乎只是我们正在处理的类,如果类包含其他类,您可能想要检查它们或尝试序列化并等待错误,如@pb指出的那样.

c# serialization

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

具有命令行界面的任务/问题跟踪系统

任何跟踪系统是否都有命令行界面?

以下是我感兴趣的功能列表:

  • 简单任务模板
    类似于具有属性的纯文本文件:类型对,例如:
description:string  
some-property:integer required
Run Code Online (Sandbox Code Playgroud)
  • 命令行界面
    例如:
// Creates task
<task tracker>.exe -create {description: "Foo", some-property: 1}   
// Search for tasks with description field starting from F
<task tracker>.exe -find { description: "F*" } 
Run Code Online (Sandbox Code Playgroud)
  • XCopy部署
    它不应该要求安装繁重的DBMS

  • 多个用户支持
    所以它不仅仅是一个人的待办事项列表

task-tracking

11
推荐指数
2
解决办法
4785
查看次数

MinGW"stdio.h:没有这样的文件或目录"

我正在尝试使用MinGW在Windows XP下编译C程序.gcc.exe提供以下错误:

stdio.h:没有这样的文件或目录

代码(hello.c)如下所示:

#include < stdio.h >

void main()
{
    printf("\nHello World\n");
}
Run Code Online (Sandbox Code Playgroud)

我使用批处理文件来调用gcc.批处理文件如下所示:

@echo off
set OLDPATH=%PATH%
set path=C:\devtools\MinGW\bin;%PATH%
set LIBRARY_PATH=C:\devtools\MinGW\lib
set C_INCLUDE_PATH=C:\devtools\MinGW\include

gcc.exe hello.c 

set path=%OLDPATH%
Run Code Online (Sandbox Code Playgroud)

我试过选项-I没有效果.我做错了什么?

c compiler-construction

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

是什么阻止了C#中的线程被收集?

在.NET中,在此代码之后,什么机制阻止Thread对象被垃圾回收?

new Thread(Foo).Start();
GC.Collect();
Run Code Online (Sandbox Code Playgroud)

是的,可以安全地假设某些东西有对线程的引用,我只是在徘徊究竟是什么.出于某种原因,Reflector没有向我展示System.Threading,所以我不能自己挖掘它(我知道MS发布了.NET框架的源代码,我只是没有它的方便).

.net multithreading garbage-collection

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

如何杀死不会死的VMware虚拟机?

我在服务器上运行的虚拟机无法停止或重新启动 - 我无法再登录它,我无法使用VMware服务器控制台停止它.还有其他VM正在运行,因此重新启动主机是不可能的.有没有其他方法迫使一台机器停止?

vmware

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

关闭包含大量标记的Yahoo地图时,请避免挂起

我有一张带有大量标记的雅虎地图(~500).地图执行得很好,直到我关闭页面,此时它暂停(在Firefox中)并显示"停止运行此脚本?" 对话框(在IE7中).如果给予足够长的时间,脚本就会完成其工作.

我能做些什么来减少这种延迟吗?

这个剥离的代码表明了这个问题:

<script type="text/javascript">
var map = new YMap(document.getElementById('map'));
map.drawZoomAndCenter("Algeria", 17);

for (var i = 0; i < 500; i += 1) {
    var geoPoint = new YGeoPoint((Math.random()-0.5)*180.0, (Math.random()-0.5)*360.0);
    var marker = new YMarker(geoPoint);
    map.addOverlay(marker);
}
</script> 
Run Code Online (Sandbox Code Playgroud)

如果您动态添加和删除标记,我知道事件处理程序会发生一些内存泄漏,但这些是静态的(尽管问题可能是相关的).哦,我知道地图上的这些标记可能不是传达数据的最佳方式,但这不是我正在寻找的答案;)

编辑:根据以下建议,我尝试过:

window.onbeforeunload = function() {
    map.removeMarkersAll();
}
Run Code Online (Sandbox Code Playgroud)

window.onbeforeunload = function() {
    mapElement = document.getElementById('map');
    mapElement.parentNode.removeChild(mapElement);
}
Run Code Online (Sandbox Code Playgroud)

但都没有奏效:(

javascript maps yui yahoo-maps

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

是否有人在Grails上开发Facebook应用程序

我没有看到很多支持Grails开发facebook apps.I只是想知道周围的人是否正在开发grails上的facebook应用程序

grails facebook

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

C# - 从项目的发布版本中排除单元测试

您通常如何分离代码库和相关的单元测试?我知道有人为单元测试创​​建了一个单独的项目,我个人觉得这个项目令人困惑且难以维护.另一方面,如果您将代码及其测试混合在一个项目中,您最终会得到与您的单元测试框架(无论是NUnit,MbUnit还是其他任何内容)相关的二进制文件以及您自己的二进制文件.

这对于调试很好,但是一旦我构建了发布版本,我真的不希望我的代码再次引用单元测试框架.

我找到的一个解决方案是将所有单元测试都包含在#if DEBUG - #endif指令中:当没有代码引用单元测试程序集时,编译器足够聪明,可以省略编译代码中的引用.

有没有其他(可能更舒适)的选择来实现类似的目标?

.net c# unit-testing assemblies reference

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

我可以在Java中向String类添加新方法吗?

我想在Java中的String类中添加一个方法AddDefaultNamespace(),这样我就可以输入"myString".AddDefaultNamespace()而不是DEFAULTNAMESPACE +"myString",以获得类似"MyDefaultNameSpace.myString"的内容.我不想添加另一个派生类(例如PrefixedString).

也许这种方法对你不好,但我个人讨厌使用"+".但是,无论如何,是否可以在Java中向String类添加新方法?

感谢致敬.

java string

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

第三方控制是什么.Net开发人员使用

我正在重新评估我的第三方控件.我目前使用ASP.Net和WinForms的Infragistics工具套件.你使用什么控件,你会推荐它们吗?

.net controls infragistics

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