问题列表 - 第10444页

C#对象初始化选项

在构造函数之外的对象初始化是否打破封装?

鉴于:

class MyClass 
{  
    public string _aString;  
}
Run Code Online (Sandbox Code Playgroud)

_aString成员不应该是私有的,并且通过调用构造函数来实例化(此处省略了构造函数):

 MyClass test = new MyClass("test");
Run Code Online (Sandbox Code Playgroud)

而不是对象初始化的替代方法:

MyClass test = new MyClass { _aString = "Test" };
Run Code Online (Sandbox Code Playgroud)

c# constructor initialization object

5
推荐指数
2
解决办法
6938
查看次数

如何将System.DirectoryEntry"uSNChanged"属性值更改为Int64

我正在尝试获取目录服务对象的"uSNChanged"值的Int64值.不幸的是,它总是以某种COM对象的形式回归.我尝试使用转换为Int64,调用Int64.Parse(),并调用Convert.ToInt64().这些都不起作用.

对于给定的DirectoryEntry对象,此代码将显示以下属性:

    private static void DisplaySelectedProperties(DirectoryEntry objADObject)
    {
        try
        {
            string[] properties = new string[] {
                "displayName",
                "whenCreated",
                "whenChanged",
                "uSNCreated",
                "uSNChanged",
            };

            Console.WriteLine(String.Format("Displaying selected properties of {0}", objADObject.Path));
            foreach (string strAttrName in properties)
            {
                foreach (var objAttrValue in objADObject.Properties[strAttrName])
                {
                    string strAttrValue = objAttrValue.ToString();
                    Console.WriteLine(String.Format("   {0, -22} : {1}", strAttrName, strAttrValue));
                }
            }
            Console.WriteLine();
        }
        catch (Exception ex)
        {
            throw new ApplicationException(string.Format("Fatal error accessing: {0} - {1}", objADObject.Path, ex.Message), ex);
        }
    }
Run Code Online (Sandbox Code Playgroud)

这是输出:

Displaying selected properties of LDAP://server/o=org/cn=obj
   displayName            : …

directoryservices active-directory directoryentry int64

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

在 Java 中挂载和解压文件

我目前正在开发一个 Web 应用程序,其中涉及安装驱动器和提取 tar.gz 文件,所有这些都是用 Java 编写的。由于该应用程序在 Linux 环境中运行,我想我应该尝试使用“mount”和“tar”等 unix 命令。

Runtime runtime = Runtime.getRuntime();
Process proc;

String mountCommand = "mount -t cifs -o username=...";
String extractCommand = "tar xzf ..."

proc = runtime.exec(mountCommand);
proc.waitFor();

proc = runtime.exec(extractCommand);
proc.waitFor();
Run Code Online (Sandbox Code Playgroud)

在终端中运行 mount 命令和 extract 命令工作正常,但在 java 中首次运行时失败。第二个 proc.waitFor() 返回退出代码 2。但是,在第一次尝试失败后运行此代码可以正常工作。我有一种感觉,问题是 waitFor() 没有等到挂载命令完全完成。我的代码中是否遗漏了任何重要的内容?

另外,我宁愿用 Java 来完成这一切,但我很难弄清楚如何解压文件,所以我采用了这种方法。(哦,如果有人能告诉我如何做到这一点,我会很高兴)。任何建议将不胜感激!

java mount runtime process tar

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

实体框架 - 如何使用导航属性添加到实体

我想使用Entity Framework将记录添加到SQL Server表中.我的表的实体具有外键,因此具有这些字段的导航属性.添加新记录/实体时,如何填充外键字段,因为它们不显示为实体的属性?

entity-framework

9
推荐指数
1
解决办法
6920
查看次数

强大的Javascript异常处理

我正在开发一个DHTML/Javascript应用程序,它依赖于一些高级功能(DOM操作,AJAX,Flash通信等).我非常关心功能 - 如果出现问题,即使在部署应用程序之后,我想确保我知道为什么以及如何解决它们 - 而且,我想确保用户能够继续使用应用程序,如果异常严重,可能会降低功能.

我目前有一个日志记录和异常处理系统,函数可以生成日志,如果发现异常,所有日志都会通过电子邮件发送给我.该系统运行良好,但我想使其更健壮.我正在寻找建议.

我的一个想法是将每个javascript函数的主体包装在try/catch块中,并在捕获异常时记录函数的名称,然后将错误抛给全局处理程序.但是,这是为了追踪异常发生的功能而进行的大量代码.

任何使运行时异常更容易查找和重现的想法?

javascript exception-handling exception

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

如何使用ruby的net/imap库阅读电子邮件的正文?

也许我今天只是脑筋不好,但我突然无法弄清楚如何阅读带有ruby的net/imap库的电子邮件.我已经好几个小时了.我在google中输入了几个"ruby imap read body"的变种,并探索了很多网站.所有这些都有关于如何提取附件,同步电子邮件服务器,使用gmail等的示例......有些(如chilkat)实际上是共享软件库,可以为您执行此操作.我查看了net/imap文档,虽然有几个例子可以做所有事情但是阅读正文.

我曾经使用net/imap,但我只需要将收件箱中的附件下拉到目录.我已经在#ruby和#rubyonrails中要求无济于事 - 没有人能想出来.


imap=Net::IMAP.new('mail.xks.com') #of course these are not real
imap.login('web1_xk3','pxx2006')
imap.select('INBOX')
imap.search(["SENTSINCE",(Time.now-1.day).strftime("%d-%b-%Y")]).each do |msgid|
     body = imap.fetch(msgid,"BODY")[0].attr["BODY"]
     ##insert code for getting the text from the body here
     ##body.class is BodyTypeText 
end

PS虽然我确实在代码中引用了活动支持,但这是sans-rails,这意味着没有动作邮件

ruby imap

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

有没有更简洁的方法来连接Cocoa中的这些字符串?

NSString *latitude = [[NSString alloc] initWithFormat:@"%g°", coordinate.latitude];
NSString *longitude = [[NSString alloc] initWithFormat:@"%g°", coordinate.longitude];
self.pointLabel.text = [latitude stringByAppendingString:@", "];
self.pointLabel.text = [self.pointLabel.text stringByAppendingString:longitude];
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c

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

限制公共和受保护变量的属性用法c#

是否可以将属性使用限制为仅受保护和公共变量.我只想限制私有变量.

c# attributes

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

如何使用过滤器来避免Active Directory中的子OU?

我有一个应用程序从Active Directory中的OU中提取用户信息.它所采用的参数是搜索的基础和过滤字符串.

我有一个OU我想从中提取信息,但是我想避免使用子OU:

通缉

用户来自 OU=People,DC=mydomain,DC=com

不想要

用户来自 OU=Evil,OU=People,DC=mydomain,DC=com

我知道这可以通过重写执行导入以停止搜索子OU的应用程序来完成,但有没有办法在搜索上使用LDAP过滤器?像(DistinguishedName !contains "Evil")或类似的东西,我会根据用户的路径排除用户,而不是过滤用户的属性.

ldap active-directory

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

代码演示了约束执行区域的重要性

除非应用,否则任何人都可以创建一个断开的短样本[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]吗?

我刚刚在MSDN上运行了这个示例,即使我注释掉ReliabilityContract属性,也无法让它破坏.最后似乎总是被召唤.

.net c# concurrency cer

38
推荐指数
2
解决办法
5874
查看次数