在C#程序集中,我们是否可以拥有一个文件,例如File1.cs与该程序集在同一名称空间中,但它没有类?例如,像这样的事情:
namespace something.otherthing
{
public enum E1
{ ..... }
public enum E2
{ ... }
}
Run Code Online (Sandbox Code Playgroud)
我认为这应该是错的?但我们可以在VB 6.0中做到这一点,但在C#中,每件事都应该是一个类.我想确定一下.
我正在构建一个小型的Android应用程序,但这更像是一个Java问题,而不是一个Android问题.查看教程中的行看起来像:
startService(new Intent(this, MyService.class));
Run Code Online (Sandbox Code Playgroud)
"MyService.class"字段到底代表什么?这仅仅是对模板类的引用吗?
谢谢.
好吧,我看到一些帖子几乎要问同样的事情但是点数有点不同.
这是一个经典案例:我正在保存/更新一个实体,并且在同一个会话中,我试图通过FlushMode = Auto从数据库中获取它们(使用criteria/find/enumerable/etc).问题是:NHibernate在查询之前没有刷新更新,所以我从数据库中获取了不一致的数据.
有些人会说,"足够公平",正如文件所述:
此过程刷新默认情况下发生在以下几点:
- 来自Find()或Enumerable()的一些调用
- 来自NHibernate.ITransaction.Commit()
- 来自ISession.Flush()
大胆的"一些调用"清楚地表明NH根本没有责任.但是,IMO在这里遇到了一致性问题,因为该文档还指出:
除非明确表示Flush(),否则绝对无法保证Session何时执行ADO.NET调用,只保证执行它们的顺序.但是,NHibernate确保ISession.Find(..)方法永远不会返回陈旧数据; 他们也不会返回错误的数据.
因此,如果我使用CreateQuery(查找替换)并过滤属性值为20的实体,NH可能不会返回值为30的实体,对吧?但这就是事实上发生的事情,因为Flush不应该自动发生.
public void FlushModeAutoTest()
{
ISession session = _sessionFactory.OpenSession();
session.FlushMode = FlushMode.Auto;
MappedEntity entity = new MappedEntity() { Name = "Entity", Value = 20 };
session.Save(entity);
entity.Value = 30;
session.SaveOrUpdate(entity);
// RETURNS ONE ENTITY, WHEN SHOULD RETURN ZERO
var list = session.CreateQuery("from MappedEntity where Value = 20").List<MappedEntity>();
session.Flush();
session.Close();
}
Run Code Online (Sandbox Code Playgroud)
毕竟:我错了,它是一个错误还是一个不可预测的功能所以每个人都必须打电话给Flush以确保它的工作?
谢谢.
菲利佩
我正在尝试编写一些适用于Linux和Win32的代码.我发现它们之间最显着的区别(在我的代码中)是性能fopen().
以下代码在我的Ubuntu上需要5秒,而相同的代码在Windows XP上需要超过100秒.我想在这里做一个说明,ubuntu是VM,而XP是在真机上.
time_t start = time(NULL);
for(int i=0; i < 100000; ++i){
FILE *fp = fopen("a.txt", "a");
if (fp != NULL)
{
fprintf(fp, "Hello World");
fclose(fp);
}
}
time_t end = time(NULL);
printf("\n It took %d seconds \n", end-start);
Run Code Online (Sandbox Code Playgroud)
显然fopen()是造成这种差异的原因.我想知道为什么会有这么大的差异?
我想使用我发送的电子邮件的布局.我目前正在为网页使用Zend Layout,但我也希望对我的电子邮件进行主题化.
这是我尝试过的.
这是我发送电子邮件的功能
$layout = Zend_Layout::getMvcInstance();
$this->_view->render($template);
$html = $layout->render('email');
$this->setBodyHtml($html,$this->getCharset(), $encoding);
$this->send();
Run Code Online (Sandbox Code Playgroud)
电子邮件布局很简单
The email content
<?php echo $this->layout()->content; ?>
Run Code Online (Sandbox Code Playgroud)
当它作为电子邮件发出时,它只是......
The email content
Run Code Online (Sandbox Code Playgroud) 使用以下代码片段,我试图获取已输入到EditTexts 的文本值.
LayoutInflater factory = LayoutInflater.from(this);
final View loginView = factory.inflate(R.layout.login, null);
b.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Dialog d = new AlertDialog.Builder(NewOrder.this)
.setIcon(R.drawable.icon)
.setTitle("Log In")
.setView(loginView)
.setPositiveButton("Log In", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
mSpinner = ProgressDialog.show(mContext, "", "Authenticating User...");
new LoginTask().execute();
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
/* User clicked cancel so do some stuff */
}
})
.create();
d.show();
}
});
Run Code Online (Sandbox Code Playgroud)
我的 …
我刚刚测试并将我的应用程序重新部署到测试实例,它工作正常,然后我更改了应用程序ID并重新部署到我的生产实例,我得到了一个索引问题.我将来如何避免这种情况?我去努力测试它,它工作正常!
Uncaught exception from servlet
com.google.appengine.api.datastore.DatastoreNeedIndexException: no matching index found.. <datastore-index kind="Article" ancestor="false" source="manual">
<property name="tags" direction="asc"/>
<property name="created" direction="asc"/>
</datastore-index>
at com.google.appengine.api.datastore.DatastoreApiHelper.translateError(DatastoreApiHelper.java:40)
at com.google.appengine.api.datastore.DatastoreApiHelper.makeSyncCall(DatastoreApiHelper.java:67)
Run Code Online (Sandbox Code Playgroud)
管理控制台说它正在"构建"索引.它说现在20分钟!多久时间!?
UIView *stateView = [getSomeUIView thisOne];
CGRect currentFrame = stateView.frame;
if(currentFrame.size.height == 0.0) {
currentFrame.size = CGSizeMake(260, 60);
}
else {
currentFrame.size = CGSizeMake(260, 0);
}
stateView.frame = currentFrame;
Run Code Online (Sandbox Code Playgroud)
我希望当帧的高度设置为零时隐藏所有子视图,但这不会发生(在iPhone 4.0.1模拟器中).任何建议为什么或替代?
我刨了以后为框架设置动画,这是一个滑动效果.我不能使用y位置并将其移出屏幕,也不能创建一个元素来隐藏它,因为我正在处理背景图像,顶部的所有内容都是透明/ alpha层.
我正在使用自定义UIGestureRecognizer子类来跟踪我InfoView班级的手势.该InfoView班是一个自定义的子视图UITableViewCell称为子类InfoCell.
我已经将我的手势识别器添加到我的根视图(屏幕上其他所有内容的父视图,因为我的自定义手势识别器的目的是允许InfoCell 在表之间拖动视图).现在,除了一件事以外,一切都有效.我在我的UIGestureRecognizer子类中使用以下代码来检测InfoView视图上的触摸:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UIView *touchView = [[touches anyObject] view];
if ([touchView isKindOfClass:[InfoView class]]) {
// Do stuff
}
Run Code Online (Sandbox Code Playgroud)
这里的问题是InfoView对象的触摸被截获,因此它们不会被转发到UITableView包含InfoCell它的父视图InfoView.这意味着我无法再通过拖动视图来滚动表InfoView视图,这是一个问题,因为它InfoView涵盖了整个视图InfoCell.
有什么方法可以将触摸转发到表格视图,以便它可以滚动?我已经尝试了很多东西:
[super touchesBegan:touches withEvent:event];
[touchView.superview.superview touchesBegan:touches withEvent:event];(touchView.superview.superview获取对其父级的引用UITableView)
但到目前为止还没有任何工作.此外,cancelsTouchesInView我UIGestureRecognizer的设置是NO,因此不会干扰触摸.
感谢帮助.谢谢!
如何创建一个链接,您可以通过电子邮件发送给用户以确认他们的电子邮件地址是否被点击了JSF?即一旦他们点击链接,他们的帐户就会被激活.