是否可以将泛型类型参数[我不知道这是否是正确的名称]限制为Enum?
例如,我该怎么做这样的事情?
//VB.NET
Function GetValues(Of T As System.Enum)(ByVal value As T) As IEnumerable(Of T)
Return [Enum].GetValues(value.GetType)
End Function
//C#
public IEnumerable<T> GetValues<T>(T value) where T : System.Enum
{
return Enum.GetValues(value.GetType());
}
Run Code Online (Sandbox Code Playgroud)
更新
为了这个目的,我最终使用了Jon Skeet的Unconstrained Melody.感谢大家的贡献.
我正在研究一个CSharp表达式求值程序,可以使用,如下所示.该组件生成代码并在内存中编译它,之后,它加载生成的程序集,创建生成的类的实例并运行它.结果保存在字典中.
我的问题是所有运行正常,直到最后一行代码失败,异常:
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException'object '不包含'FirstName'的定义.
但是,Visual Studio能够向我展示专业变量内容:
Professional = { FirstName = Juan Pablo,
LastName = Ibañez,
Certifications = <>f__AnonymousType0`3[System.String,System.String,System.String][],
SayHi = System.Action }
Run Code Online (Sandbox Code Playgroud)
这是代码:
static void Main(string[] args)
{
const string data = @"results[""professional""] =
new
{
FirstName = ""Juan Pablo"",
LastName = ""Ibañez"",
Certifications = new[]
{
new { Provider=""MSFT"", ExamCode = ""70-536"", Title = ""TS: Microsoft .NET Framework – Application Development Foundation"" },
new { Provider=""MSFT"", ExamCode = ""70-505"", Title = ""TS: Microsoft .NET Framework – Application Development …Run Code Online (Sandbox Code Playgroud) 我正在根据ComboBox选择更新图像控件的Source.
更新图像源后,我需要读取图像的ActualWidth和ActualHeight
我在第一次使用Image控件的Loaded事件打开对话框时工作,但是每次更新Source时这个事件都没有明显提升.
有没有办法在每次Source更新后获得加载到控件中的图像的实际大小?
如何在目标c中为整数或NSUIntegers创建数组?
问题是我想要一个我可以经常更改的数组(NSMutableArray?)但是当我尝试添加对象时:someInt或someNSUInteger我得到一个关于"没有强制转换"的警告,当代码执行应用程序崩溃时.
设置它的最快方法是什么?我不知道阵列的大小.它应该是动态的.
编写一个算法,打印从 1 到 n 的完美数。要确定一个数字是否完美,请将所有小于该数字的因数相加。如果总和等于数字,则是完美的。
import java.util.Scanner;
public class Assign_6 {
public static void main(String[] args){
int num,number,sum=0,factor;
System.out.print("Enter Number");
Scanner keyboard = new Scanner (System.in);
number=keyboard.nextInt();
for (num=1;num<number;num++){
for(factor=1;factor<number;factor++){
if(num%factor==0){
sum= sum+factor;
}
if(sum==num){
System.out.println(sum);
}
sum=0;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出:24
什么都打印不出来。不知道怎么回事。我哪里错了?我只能使用 while、for 和 else-if 语句。
因为.net framework 4.0支持Tuples.Tuple Class在3.5中不可用但是有什么方法可以在.net 3.5中创建我自己的类MyTuple吗?
我已将JQuery Datepicker控件添加到我的一个ASP.Net页面中.该页面允许用户添加有关设备的详细信息.
他们还可以使用Datepicker选择他们购买设备的日期,然后从下拉列表中选择设备随附的保修长度(即1,2,3,4,5岁等).根据他们选择的保修期,我需要JQuery代码来计算设备保修期到期的日期,即,如果购买21/02/2011,3年保修,则保修到期日为21/02/2014.
我看过这个网站上的其他Datepicker示例,但似乎都没有显示如何将日期添加到日期,而只是如何添加天数.
到目前为止这是我的代码
$('#equipment_purchaseDate').datepicker({ dateFormat: 'dd/mm/yy', onSelect: function (dateStr) {
var d = $.datepicker.parseDate('dd/mm/yy', dateStr);
d.setDate(d.getDate() + ($('#equipment_warrantyLength').val() * 365)); //multiple warranty length by 365 to get years, then add to startDate
$('#equipment_warrentyExpires').datepicker('setDate', d);
}
});
Run Code Online (Sandbox Code Playgroud)
但是这似乎没有正常工作.
任何反馈都将非常感激.
谢谢.
基本上,正如标题所说.我想知道我怎么能加1天NSDate.
如果它是:
21st February 2011
Run Code Online (Sandbox Code Playgroud)
它会变成:
22nd February 2011
Run Code Online (Sandbox Code Playgroud)
或者如果是:
31st December 2011
Run Code Online (Sandbox Code Playgroud)
它会变成:
1st January 2012.
Run Code Online (Sandbox Code Playgroud) 对于xslt来说还是新手,请原谅我这是一个基本问题 - 我无法在SO上找到答案,也无法在Google上搜索.
我要做的是返回一组经过筛选的节点,然后在该集合中的前1个或2个项目上进行模板匹配,另一个模板与剩余部分匹配.但是,如果没有<xsl:for-each />循环,我似乎无法做到这一点(这是非常不受欢迎的,因为我可能匹配3000个节点并且仅以不同方式处理1).
使用position()不起作用,因为它不受过滤影响.我已经尝试对结果集进行排序,但这似乎没有及早生效以影响模板匹配.在<xsl:number />输出正确的数字,但我不能在比赛语句中使用这些.
我在下面放了一些示例代码.我正在使用position()下面不合适的方法来说明问题.
提前致谢!
XML:
<?xml version="1.0" encoding="utf-8"?>
<news>
<newsItem id="1">
<title>Title 1</title>
</newsItem>
<newsItem id="2">
<title>Title 2</title>
</newsItem>
<newsItem id="3">
<title></title>
</newsItem>
<newsItem id="4">
<title></title>
</newsItem>
<newsItem id="5">
<title>Title 5</title>
</newsItem>
</news>
Run Code Online (Sandbox Code Playgroud)
XSL:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<ol>
<xsl:apply-templates select="/news/newsItem [string(title)]" />
</ol>
</xsl:template>
<xsl:template match="newsItem [position() < 4]">
<li>
<xsl:value-of select="title"/>
</li>
</xsl:template>
<xsl:template match="*" /> …Run Code Online (Sandbox Code Playgroud) c# ×2
objective-c ×2
.net ×1
asp.net ×1
cocoa-touch ×1
cryptography ×1
date ×1
datepicker ×1
encryption ×1
enums ×1
for-loop ×1
if-statement ×1
image ×1
java ×1
jquery ×1
jquery-ui ×1
nsdate ×1
size ×1
umbraco ×1
vb.net ×1
wpf ×1
wpf-controls ×1
xml ×1
xslt ×1