问题列表 - 第3765页

C#我可以从另一个类中取消对象

我有一个在一个类中生成的对象

public class CreatingClass
{
    public T CreateObject<T>(Dictionary<string, object> parameters) where T : IMyInterface, new()
    {
        ....
    }

    public void DestroyObject(IMyInterface objectToDestroy)
    {
        ....
    }
}
Run Code Online (Sandbox Code Playgroud)

我从客户端类调用此函数,然后有时需要通过创建类通过我的应用程序使其无效.

我可以做以下事情

public class ClientClass
{
    MyObject obj;
    CreatingClass creatingClass = new CreatingClass();

    private void AFunctionToCreateMyClass()
    {
        obj = creatingClass.CreateObject<MyClass>(parameters);
    }

    private void AFunctionToDeleteMyObject()
    {
        CreatingClass.DestroyObject(obj);
        Assert.IsNull(obj);//Doesn't fail
    }
}
Run Code Online (Sandbox Code Playgroud)

我曾尝试过objectToDestroy = null,但不认为它会起作用(而且它没有)

.net c# null

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

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

从html表单的下拉框中获取选定的值而不提交

如何从html表单中的下拉框元素中获取所选项目的文本?(使用python)当我使用鼠标从下拉框中选择一个项目时,如何将值存储到变量?(即不使用提交按钮)

这是我在app引擎中执行的应用程序,它只支持Python.

html javascript python google-app-engine drop-down-menu

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

何时使用Collection <T> vs List <T>

可能重复:
List(T)和Collection(T)有什么区别?

什么时候使用一个与另一个的最佳做法是什么?

两者都实现IList <T>并以有序的方式保存数据,但只有List公开排序语义....

.net generics collections list

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

虚拟继承

"虚拟"继承的含义是什么?

我看到以下代码,并且virtual在以下上下文中不理解关键字的含义:

class A {};
class B : public virtual A;
Run Code Online (Sandbox Code Playgroud)

c++ virtual inheritance

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

如何优化/加速代码执行C#,Windows.Net

我有以下代码块,我试图在优化部分进行优化

DataSet dsLastWeighing = null;
DataSet ds = null;
DataSet dsWeight = null;
string strQuery = string.Empty;
string strWhere = string.Empty;
Database db = null;

#region Original Code Block
            try
            {   
                db = DatabaseFactory.CreateDatabase();

                strWhere = "WHERE SESSION_ID = '"+pSessionID+"'"; 
                strQuery = SQ.BusinessLogic.SQLQueryFactory.GetPatientLastWeighing("DeleteWeightRecent",db.ToString(),pFacilityID,pSessionID,strWhere,0,DateTime.Now.ToUniversalTime(),0,"");
                db.ExecuteNonQuery(System.Data.CommandType.Text, strQuery);

                strWhere = "WHERE LAB_ID = 0";
                strQuery = SQ.BusinessLogic.SQLQueryFactory.GetPatientLastWeighing("InsertWeightRecent",db.ToString(),pFacilityID,pSessionID,strWhere,0,DateTime.Now.ToUniversalTime(),0,"");
                db.ExecuteNonQuery(System.Data.CommandType.Text, strQuery);

                strWhere = strWhere = "WHERE SESSION_ID = '"+pSessionID+"'"; 
                strQuery = SQ.BusinessLogic.SQLQueryFactory.GetPatientLastWeighing("GetPatientID",db.ToString(),pFacilityID,pSessionID,strWhere,0,DateTime.Now.ToUniversalTime(),0,"");
                ds = (DataSet) db.ExecuteDataSet(System.Data.CommandType.Text, strQuery);

                foreach(DataRow dr in ds.Tables[0].Rows)
                {
                    if (db.ToString() == …
Run Code Online (Sandbox Code Playgroud)

c#

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

使用NSXMLParser从HTTPS URL解析XML?

我正在尝试直接从HTTPS URL解析XML,如下所示:

NSString *const URL = @"https://some/HTTPS/url";
NSURL* url = [NSURL URLWithString:URL];
NSXMLParser* parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
[parser setDelegate:self];
[parser parse];
Run Code Online (Sandbox Code Playgroud)

我有解析器的以下委托方法:

- (void) parser:(NSXMLParser *)parser 
didStartElement:(NSString *)elementName 
namespaceURI:(NSString *)namespaceURI 
qualifiedName:(NSString *)qualifiedName 
attributes:(NSDictionary *)attributeDict
{
    NSLog(@"Started parsing %@", elementName);
}
Run Code Online (Sandbox Code Playgroud)

这似乎适用于HTTP URL,但没有显示HTTPS URL的结果.

我怎么能解决这个问题?

xml cocoa parsing cocoa-touch objective-c

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

测试事件是否已分配EventHandler

我想测试一个类有一个EventHandler分配给一个事件.基本上我正在使用我的IoC容器为我连接EventHandlers,我想检查它们是否正确分配.所以,我正在测试我的IoC配置.

[Test]
public void create_person_event_handler_is_hooked_up_by_windsor()
{
    IChangePersonService changePersonService = IoC.Resolve<IChangePersonService>();

    // check that changePersonService.PersonCreated has a handler attached
}
Run Code Online (Sandbox Code Playgroud)

我不确定如何测试changePersonService.PersonCreated有任何附加到它的东西.

有任何想法吗?

谢谢.

c# events unit-testing event-handling

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

日本电子邮件主题编码

显然,编码日语电子邮件有点挑战性,我正在慢慢发现自己.如果有任何专家(即使是那些经验有限的专家),我可以请一些指导如何做,如何测试以及如何验证它?

请记住,我从未踏足日本附近的任何地方,只是我正在开发的产品在其他地方使用.

到目前为止,我所知道的是:
- 日本的电子邮件应该用ISO-2022-JP,日本JIS代码页50220或可能的SHIFT_JIS代码页932
编码 - 电子邮件传输编码应该设置为Base64用于纯文本,7Bit用于Html
- 电子邮件主题应单独编码,以"=?ISO-2022-JP?B?"开头.(不知道这是什么意思).我试过用这个主题编码

"=?ISO-2022-JP?B?" + Convert.ToBase64String(Encoding.Unicode.GetBytes(subject))
Run Code Online (Sandbox Code Playgroud)

它基本上给出了预期的编码字符串,但它没有在电子邮件程序中显示为任何日文文本
- 我已在Outlook 2003,Outlook Express和GMail中测试过

任何帮助将不胜感激


好的,所以发布一个简短的更新,由于这两个有用的答案,我已经设法得到正确的格式和编码.现在,Outlook提供了类似于正确主题的东西:
=?iso-2022-jp?B?6 Japanese test ??????????????? 6??????=

但是,Outlook Express中完全相同的电子邮件给出了这样的主题:
=?iso-2022-jp?B?6 Japanese test ???????????????????????? 6??????????=

此外,在Outlook Express的收件箱视图中查看时,电子邮件主题更加奇怪,如下所示:
=?iso-2022-jp?B?6 Japanese test ??????????????? 6???????=

Gmail似乎与Outlook的工作方式类似,看起来是正确的.

我无法理解这一个.

c# email unicode encoding

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

在预构建事件中设置环境变量并在编译步骤中使用

在Visual Studio 2003中,我尝试在预构建事件中设置一个环境变量,然后在编译步骤中使用该变量,但该值似乎不会传播.例如,如果预构建事件包含此内容(直接或在批处理文件中):

set MY_LIB_VERSION=1.0.0
Run Code Online (Sandbox Code Playgroud)

和AdditionalIncludeDirectories有这个:

c:\path\to\library\my_lib_v$(MY_LIB_VERSION)\include
Run Code Online (Sandbox Code Playgroud)

如果my_lib_v1.0.0目录存在,我希望编译工作.但相反,我得到了

c:\path\to\prog\my_prog.c(22) : fatal error C1083: Cannot open include file: 'my_lib.h'
Project : warning PRJ0018 : The following environment variables were not found:
$(MY_LIB_VERSION)

我推断在预构建事件中设置的环境变量因此没有传播到编译步骤,但我可能会遗漏一些东西.

如何在预构建事件中设置环境变量并在编译步骤中使用它?

(或者,任何其他明智的方法来定义一个库版本并为AdditionalIncludeDirectories和AdditionalLibraryDirectories多次使用它也会这样做.)


更新:我最终以不同的方式解决了我们的问题.我们正在使用Subversion,并svn:externals在被调用的项目源的子目录上设置该属性dependencies,这样项目的签出将另外检出<svn_path>\libraries\my_lib_v1.0.0dependencies\my_lib在工作副本中调用它.然后项目设置可以参考dependencies\my_lib\include等.升级到版本1.0.1 my_lib只是编辑svn:externals属性的问题 - 代码和项目设置不需要更改.

windows visual-studio-2003 compilation environment-variables visual-studio

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