小编Mik*_*yev的帖子

UIPopovercontroller dealloc到达,而popover仍然可见

我向你保证,我确实在我的问题中寻找答案,但没有一个是有帮助的.在这里,我得到了一个简单的代码,它应该UIImagePickerController在一个UIPopoverController:

-(void)takePicture:(id)sender{
UIImagePickerController *picker=[[UIImagePickerController alloc] init];
picker.delegate=self;
picker.sourceType=UIImagePickerControllerSourceTypeCamera;
picker.allowsEditing=YES;
UIPopoverController *poc=[[UIPopoverController alloc] 
                            initWithContentViewController:picker];
[poc presentPopoverFromBarButtonItem:bbItem 
            permittedArrowDirections:UIPopoverArrowDirectionAny
                            animated:NO];
}
Run Code Online (Sandbox Code Playgroud)

现在,即使从我第一次[UIPopoveController dealloc]到达时...错误和程序崩溃.根据ARC,我没有做任何保留,重新发布或自动释放.UIPopoverControllers当受益于ARC时,有什么特别的考虑吗?

memory-management uipopovercontroller ios automatic-ref-counting

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

如何在C#中用空格分隔数千个?

假设我有以下十进制数,我必须格式化,以便每千个应该用空格分隔:

 897.11 to 897.11
 1897.11 to 1 897.11
 12897.11 to 12 897.11
 123897.11 to 123 897.11
Run Code Online (Sandbox Code Playgroud)

我试过Decimal.ToString("0 000.00").虽然这个数字是1897.11时效果很好.但当它是897.11时,我得到0 897.11.

c# decimal custom-formatting

36
推荐指数
5
解决办法
4万
查看次数

为什么我更喜欢枚举到具有常量值的结构

带常量的结构:

public struct UserType
{
  public const int Admin=1;
  public const int Browser=2;
  public const int Operator=3;
}
Run Code Online (Sandbox Code Playgroud)

现在让我们使用枚举来达到同样的目的:

public enum UserType
{
  Admin=1,
  Browser,
  Operator
}  
Run Code Online (Sandbox Code Playgroud)

两者都在堆栈上分配.在这两种情况下,我都会说UserType.Admin.使用struct方法,我不必转换为int来获取底层值.我知道使用枚举版本可以保证三个值中只有一个将被使用,而对于struct版本,任何整数都可以used,表示Int32.MinValue和Int32.MaxValue之间的任何值.除了这个之外,还有其他好处吗?

c# enums struct

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

静态字段与会话变量

到目前为止,我一直在使用Session将一些变量从一个页面传递到另一个页面.例如用户角色.当用户登录到Web应用程序时,用户的角色ID保留在Session中,并且在应用程序的不同部分检查该角色.我最近开始考虑为什么不使用静态成员.我可以将相同的信息存储在静态字段中,并可以在我的应用程序的任何地方轻松访问它(包括静态字段所在的命名空间的任何位置.)我知道使用Session变量有时会派上用场,这样:

  1. 任何类型的数据都可以存储在Session中.然而,它必须被转换.但静态字段仅接受具有正确数据类型的数据.
  2. 会话变量将在一段时间后过期,这是我们在许多情况下需要的行为.

除了上述之外,还有其他原因我不应该使用静态字段来存储数据并让它随处可用吗?

.net c# asp.net session-variables static-members

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

如何附加不是来自数据库的Entity Framework对象?

我完全分离了我的Entity Framework对象和我的POCO对象,我只是来回翻译它们......

即:

// poco
public class Author
{
   public Guid Id { get; set; }
   public string UserName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个EF对象"作者"具有相同的属性..

所以我有我的业务对象

var author = new Author { UserName="foo", Id="Guid thats in the db" };
Run Code Online (Sandbox Code Playgroud)

我想保存此对象,所以我执行以下操作:

var dbAuthor = new dbAuthor { Id=author.Id, UserName=author.UserName };
entities.Attach(dbAuthor);
entities.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

但这给了我以下错误:

具有null EntityKey值的对象无法附加到对象上下文.

编辑: 看起来我必须使用entities.AttachTo("作者",dbAuthor); 没有EntityKey附加,但后来我有硬编码的魔术字符串,如果我改变我的实体集名称将会破坏我不会有任何编译时间检查...有没有一种方法可以附加,保持编译时间检查?

我希望我能够做到这一点,因为硬编码字符串会导致编译时间验证失败=)

c# linq-to-entities entity-framework .net-3.5

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

我应该索引Oracle中的主键列吗?

我最近停止认为主键不是索引,它们是Unique和Null约束的组合.到目前为止,我从未为PK列创建索引.我的问题是,如果要在许多查询的WHERE部分中使用此列,我是否应该为PK列创建索引.

oracle indexing primary-key

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

重新启动应用程序时获取异常SIGKILL

我在iPhone模拟器中构建并运行一个项目.我按下主页按钮将其发送到后台.然后我双击主页按钮在后台找到我的应用程序并点按它.它变得活跃,应用程序继续运行.无论我重复多少次,我都没有问题.然后我通过点击应用程序图标上的小红色减号来终止该过程.但如果我再次点击应用程序图标重新启动它,我会收到SIGKILL错误并且应用程序崩溃.这可能是什么原因?它可能是由我的XCode偏好引起的吗?

iphone exception sigkill

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

在Oracle的过程中选择Statement

很抱歉提出这个问题,但是因为之前给出的答案都不足以让我理解.我想编写一个存储过程来返回表中的所有列.作为一个广告hod查询我只是写

SELECT * FROM EMPLOYEES
Run Code Online (Sandbox Code Playgroud)

但在这里,我收到一个错误,提示我提供INTO条款,我不明白为什么以及如何.有人可以解释我在上述情况下如何做以及只想返回一个列值(多行) .

select stored-procedures oracle10g

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

CustomValidator ServerValidate方法不会触发

CustomValidator在表格上写了一个.我没有设置它的ControlToValidate财产.在它的ServerValidate事件中,我写了以下内容:

protected void CustomValidator1_ServerValidate(object source,      
                                               ServerValidateEventArgs args)
{
    args.IsValid = false;
}
Run Code Online (Sandbox Code Playgroud)

我给这个方法设了一个断点,但似乎从来没有达到这一点.但如果我在另一种形式上这样做,它就像一个魅力.

  1. ValidationGroup两个按钮和属性CustomValidator是相同的
  2. 我尝试在按钮和删除此属性CustomValidator,仍然无法正常工作.

似乎有形式的东西.我只是CustomValidator在表单上添加一个并且除了设置其ServerValidate事件方法之外不要触及它的任何属性.

编辑:这是aspx部分:

 <asp:CustomValidator ID="CustomValidator2" runat="server" 
       ErrorMessage="This is a test" 
   onservervalidate="CustomValidator1_ServerValidate" 
   ValidationGroup="PA"></asp:CustomValidator>


<asp:Button ID="btnPensionersOK" runat="server" Text="OK" Width="75px" 
          onclick="Button1_Click" ValidationGroup="PA" />
Run Code Online (Sandbox Code Playgroud)

c# asp.net customvalidator

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

Oracle - 为什么我应该使用包而不是独立的过程或函数

我搜索谷歌,但没有找到任何令人满意的答案,为什么我应该使用包.

我知道包是一捆程序,函数和不同的变量.据我所知,它有点对应于OOP中的对象.但是,当然没有什么比实例化包的不同实例更能使每个实例具有不同的属性值并且表现不同.

那么当我可以创建一个独立的过程并单独调用它时,使用包的优点是什么?

oracle database-design plsql

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