看下面的例子:
public class Test {
public int Number { get; set; }
public void TestReflection() {
Number = 99;
Type type = GetType();
PropertyInfo propertyInfo = type.GetProperty("Number");
propertyInfo.SetValue(this, null, null);
}
}
Run Code Online (Sandbox Code Playgroud)
在示例中,我将int
属性设置为null
使用反射.我希望这会抛出一个异常,因为null
它不是一个有效的值int
.但它没有抛出,它只是将属性设置为0.为什么!?
更新
好吧,似乎就是这样.如果尝试将其设置为null,则该属性将获取value-type的默认值.我已经发布了一个答案,描述了我如何解决我的问题,也许有一天会帮助某人.感谢所有回答的人.
我觉得我的应用程序性能不佳,想要弄清楚代码中哪些部分是邪恶的.有关如何找到这些的好教程吗?
在UIViewController中,我将MKMapView添加到控制器控制的视图中.
- (void)viewDidLoad {
[super viewDidLoad];
CGRect rect = CGRectMake(0, 0, 460, 320);
map = [[MKMapView alloc] initWithFrame:rect];
map.delegate = self;
[self.view addSubview:map];
}
Run Code Online (Sandbox Code Playgroud)
后来我在控制器中
- (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView
{
NSLog(@"done.");
}
Run Code Online (Sandbox Code Playgroud)
完成永远不会被打印.其他任何委托方法都不像mapView一样调用:viewForAnnotation:我在另一个应用程序中使用MKMapView,但这似乎发生在我制作的任何新应用程序上.有没有人见过这种行为?
编辑:
问题似乎是当UIViewController成为MKMapView的委托时,NSObject的直接子类似乎工作正常.我可以像这样解决这个问题,因为我之前已经做过,所以看起来仍然很奇怪.
大家下午好。我将在整个过程中发布存储过程。随意将其撕成碎片。作者不会介意的。
DECLARE @itemTypeID INT
SELECT @itemTypeID=ItemTypeID FROM dbo.ItemTypes WHERE ItemTypeName = 'Advert'
BEGIN
SELECT a.Active,
a.ParentClass,
a.Classification,
a.Variant,
FV."Full Views",
PV."Print Views",
EE."Email Enquiries",
a.ItemRef,
a.SiteID
FROM
(
SELECT DISTINCT i.ItemID,
i.ItemRef,
i.SiteID,
i.ParentClass,
i.Classification,
i.Summary AS "Variant",
i.Active
FROM Items i
JOIN Actions a
ON a.ItemID = i.ItemID
JOIN ActionTypes at
ON a.ActionTypeID = at.ActionTypeID
WHERE i.ItemTypeID = 1
AND a.DateAndTime BETWEEN @startDate AND @endDate
AND at.ActionTypeName IN ('Full view', 'Print view', 'Email enquiry')
AND ((@siteID = -1) OR …
Run Code Online (Sandbox Code Playgroud) 我写了这个方法来检查页面是否存在:
protected bool PageExists(string url)
{
try
{
Uri u = new Uri(url);
WebRequest w = WebRequest.Create(u);
w.Method = WebRequestMethods.Http.Head;
using (StreamReader s = new StreamReader(w.GetResponse().GetResponseStream()))
{
return (s.ReadToEnd().Length >= 0);
}
}
catch
{
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
我用它来检查一组页面(从AAAA-AAAZ迭代),运行整个循环需要3到7秒.有没有更快或更有效的方法来做到这一点?
在Django管理控制台中,所有部分(菜单链接)都来自带有数据库表的模型,但是如果我需要一个没有相应模型对象(没有数据库表)从模型中获取其他部分数据的部分,我还需要做什么?
有任何想法吗?谢谢
我正在使用IE Web开发人员工具栏来解决问题.列表项下方出现一个空白空格,我无法从逻辑上弄清楚原因.使用web开发工具栏,我看到在下面的示例1中,"文本 - 空文本节点"正在"Text - Google"下面输出.具有讽刺意味的是,在第二个中,在"Google"一词之后手动插入空格,该文本节点不再出现.如果结果被颠倒,那对我来说是完全合理的.什么想法可能导致这种奇怪的行为?
注意:这是在IE7中发生的,而不是IE8.
<li><a href="www.google.com">Google</a></li> - empty text node appears at end
<li><a href="www.google.com">Google </a></li> - no empty text node
Run Code Online (Sandbox Code Playgroud)
更新:好的我已经缩小了这个问题.基本上,似乎我正在使用的某些属性之间存在冲突.我需要将a标签显示为块,因此当有多行时它们将正确包装.但我在物品之间也不需要空的空间.我不太清楚为什么那个空的空间能解决这个问题,并且不愿意只是"破解"它.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<style type="text/css">
a
{
display:block;
}
li
{
zoom: 1;
}
</style>
</head>
<body>
<ul>
<li>
<div style="background-color:blue">
<a href="#"><img src="http://www.google.com/intl/en_ALL/images/logo.gif"/></a>
</div>
<ul>
<li style="background-color:Red"><a href="#">One</a></li>
<li style="background-color:green"><a href="#">Two </a></li>
<li style="background-color:Yellow"><a href="#">Three</a></li>
</ul>
</li>
</ul>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 如何在Silverlight应用程序上显示tiff文件?我可以显示除tiff之外的任何图像格式,任何人都可以帮助我吗?谢谢.
我正在使用DataGridView控件的WinForm客户端.我注意到用户必须单击一次才能选择单元格并再次进行编辑.将此更改为单击编辑模式的方法是什么?我以为我之前见过这样的东西却记不起名字了.
是什么之间的区别&
,并&&
在MATLAB逻辑运算符?
c# ×3
iphone ×2
.net ×1
asp.net ×1
cocoa-touch ×1
css ×1
datagridview ×1
django ×1
django-admin ×1
django-forms ×1
mapkit ×1
matlab ×1
performance ×1
reflection ×1
silverlight ×1
sql ×1
sql-server ×1
t-sql ×1
tiff ×1
uikit ×1
winforms ×1