我的ViewModel包含一个List<string> SelectedActions和一个方法AddSelectedAction(string addMe)
如果我有以下代码,GUI在调用方法时不会更新:
SelectedActions.Add(addMe);
OnPropertyChanged("SelectedActions");
Run Code Online (Sandbox Code Playgroud)
但如果我使用它,那么它的工作原理:
SelectedActions.Add(addMe);
List<string> li = new List<string>();
foreach (string st in SelectedActions)
li.Add(st);
SelectedActions = li;
OnPropertyChanged("SelectedActions");
Run Code Online (Sandbox Code Playgroud)
我在哪里有以下效用函数
protected void OnPropertyChanged(string propertyName)
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
Run Code Online (Sandbox Code Playgroud)
除了实现INotifyPropertyChanged
Note我发布的代码有效,如果我删除了OnPropertyChanged调用,所以我知道它至少在做某事
我得到一个包含100万个文件的文件夹.
我希望立即开始处理,在此文件夹中列出文件,Python或其他脚本语言.
通常的函数(python中的os.listdir ...)是阻塞的,我的程序必须等待列表的结尾,这可能需要很长时间.
列出大文件夹的最佳方法是什么?
我想从View对象的内部资源加载位图(源本身在"可绘制"文件中).
代码是:
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.view.View;
public class BannerView extends View {
private Bitmap m_Banner = null;
public BannerView(Context context, AttributeSet attributeSet) {
super(context, attributeSet);
m_Banner = BitmapFactory.decodeResource(getResources(), R.drawable.banner);
}
}
Run Code Online (Sandbox Code Playgroud)
为什么m_Banner值为null?
先感谢您
KOBI
我们有一个相当大的silverlight 4应用程序.我们正在寻找应用程序中的内存泄漏,这已经变成了一项艰巨的任务.
对于那些看过原帖的人来说,事情已经彻底改变了!
我意识到ANTS内存分析器并没有向我展示正确的东西.那是因为内存泄漏不在托管代码中,而是在本机代码中.我确实解决了ANTS的一些问题 - 它是托管代码内存泄漏的好工具.
所以我找到了这个博客,
哪个很棒.我使用xPerf和xPerfViewer来查看本机堆,看看我怀疑是实际的内存泄漏.
所以我可以看到一个看起来像这样的堆栈跟踪,
CCoreServices::Draw
CCoreServices::Tick
CUElement::Render
CUIElement::Render
CUIElement::RenderWithTransform
CUIElement::RenderVisual
CUIElement::RenderChildren
{Repeat of the above in a recursive fashion}
Run Code Online (Sandbox Code Playgroud)
所以在这个'Render'方法的某个地方,它分配了大约520字节的内存,据我所知它并没有释放它.
我还可以看到一个叫做的方法或类
SDBitmapCreate
Run Code Online (Sandbox Code Playgroud)
也在泄漏记忆.
有意思,因为我似乎找到了什么,但我不确定是什么.
还有其他建议吗?
谢谢.
Rails控制器使得支持多种内容类型变得非常容易.
respond_to do |format|
format.js { render :json => @obj }
format.xml
format.html
end
Run Code Online (Sandbox Code Playgroud)
美丽.在一个控制器动作中,我可以轻松地响应多种内容类型,并且具有足够的灵活性,可以呈现我想呈现的内容,无论是模板,对象的序列化形式等.
我可以在Spring-MVC中做类似的事情吗?在Spring中支持多种内容类型的标准是什么?我见过涉及视图解析器的解决方案,但这看起来很难管理,特别是如果我想支持除xhtml和xml之外的JSON.
任何建议都表示赞赏,但更简单,更优雅的解决方案将更受欢迎;)
编辑
如果我断言查看解析器很难管理,请随时纠正我并提供一个示例.最好是可以返回xml,xhtml和JSON的.
java model-view-controller content-type ruby-on-rails spring-mvc
当我尝试验证对象是否已经在Entity Framework上下文中时,我在使用EF4时遇到了问题.
我在下面有这个代码
var entityName = Entity4Test + Guid.NewGuid();
using( var ctx = new EnviroDataContext() )
{
var etc = new Entity
{
Name = entityName
};
ctx.Entity.AddObject( etc );
var q = from p in ctx.Entity
where p.Name == entityName
select p;
// Why 'q.ToList().Count == 0'?
ctx.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,为什么插入后我的搜索出来了?
我知道数据在'SaveChanges'之后仍然存在,但如果我需要'查询'我的实体内存数据该怎么办.
扩展问题
我有一个业务规则,通过添加1个项目A,触发其他实体B的插入.问题是,我有验证规则,在插入B时,t A必须已经存在.
因为所有这些操作都是在"SaveChanges"之前进行的,所以我收到EntityA不存在的错误.
其他情况下,我有一个在表上唯一的名称字段.如果我尝试运行AddEntityName("bla")两次然后运行'SaveChanges',我会从DB [Unique constraints]中获得异常,即使在通过我的验证插入之后,也保证名称是唯一的.
任何人都有任何想法?
是否有一个命令行开关清除我添加的当前powershell会话变量?
我正在使用Add-Type命令行开关,我收到错误"无法添加类型.类型名称已存在."
我创建了一个信号:
sig_published = Signal()
Run Code Online (Sandbox Code Playgroud)
此信号放在signals.py中,我在models.py中导入:
from signals import sig_published
Run Code Online (Sandbox Code Playgroud)
在模型文件的页脚中,我将它连接到一个函数,为了测试目的,只打印出一个调试字符串:
def update_mode(sender, **kwargs):
print "UPDATING"
sig_published.connect(update_mode, sender=MyModel)
Run Code Online (Sandbox Code Playgroud)
现在,在我的save() - Method中,我尝试发送一个信号:
sig_published.send(sender=self)
Run Code Online (Sandbox Code Playgroud)
但它没有打印出任何东西.如果我尝试像pre_save这样的内置信号:
pre_save.connect(update_mode, sender=MyModel)
Run Code Online (Sandbox Code Playgroud)
有用.有任何想法吗?
我的数据库上有多个字段的唯一索引.因此,如果您尝试在重复记录上调用save,它会引发ActiveRecord :: StatementInvalid并显示mysql错误.有没有办法通过创建唯一约束来在rails中处理这个问题,或者在发生这种情况时让它返回相关的错误消息?
继承人追踪:
ActiveRecord::StatementInvalid: Mysql::Error: Duplicate entry '2010-12-09-2-0-1-1' for key 2: INSERT INTO `entries` (`rejected_at`, `created_at`, `comments`, `overtime`, `submitted_at`, `updated_at`, `time`, `approved`, `day`, `user_id`, `approved_at`, `job_id`, `submitted`, `rejected`) VALUES(NULL, '2010-12-09 21:50:46', NULL, 0, NULL, '2010-12-09 21:50:46', 2.0, NULL, '2010-12-09', 1, NULL, 1, NULL, NULL)
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb:219:in `log'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb:319:in `execute'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:259:in `insert_sql'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb:329:in `insert_sql'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:44:in `insert_without_query_dirty'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:18:in `insert'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/base.rb:2901:in `create_without_timestamps'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/timestamp.rb:53:in `create_without_callbacks'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/callbacks.rb:266:in `create'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/base.rb:2867:in `create_or_update_without_callbacks'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/callbacks.rb:250:in `create_or_update'
from /home/cmatthews/src/cannon/vendor/rails/activerecord/lib/active_record/base.rb:2538:in …Run Code Online (Sandbox Code Playgroud) c# ×2
silverlight ×2
.net ×1
android ×1
content-type ×1
data-binding ×1
django ×1
events ×1
filesystems ×1
insert ×1
java ×1
mvvm ×1
mysql ×1
powershell ×1
python ×1
ruby ×1
spring-mvc ×1
stream ×1
vi ×1
vim ×1