我正在尝试构建一个帮助方法,将两个行列表转换为数组转换为一行.我遇到的问题是我不确定如何创建一个T []实例.
我试过了
Array.newInstance(T.class, list.size)
但我无法喂它T.class ..
也试过,new T[](list.size)
但它不喜欢参数.
public <T> T[] ConvertToArray(List<T> list)
{
T[] result = ???
result = list.toArray(result);
return result;
}
Run Code Online (Sandbox Code Playgroud)
还有其他想法吗?
谢谢
我有一个枚举
string name;
public enum Color
{
Red,
Green,
Yellow
}
Run Code Online (Sandbox Code Playgroud)
如何在加载时将其设置为NULL.
name = "";
Color color = null; //error
Run Code Online (Sandbox Code Playgroud)
编辑:我的不好,我没有正确解释.但所有与可空的相关的答案都是完美的.我的情况是如果,我已经在类中使用其他元素(例如名称等)获取/设置枚举.在页面加载时,我初始化类并尝试将值默认为null.这是场景(代码在C#中):
namespace Testing
{
public enum ValidColors
{
Red,
Green,
Yellow
}
public class EnumTest
{
private string name;
private ValidColors myColor;
public string Name
{
get { return name; }
set { name = value; }
}
public ValidColors MyColor
{
get { return myColor; }
set { myColor = value; }
}
}
public partial class _Default : …
Run Code Online (Sandbox Code Playgroud) 如何使用换行符和嵌套引号将csv读入c#.起初我一直在寻找配对引用来表示一个值,但你可以有嵌套的引号!
擅长怎么做?
当类使用Assembly.GetEntryAssembly()在单元测试中运行时,Assembly.GetEntryAssembly()为null.是否有一些选项如何在单元测试期间定义Assembly.GetEntryAssembly()?
scala noob在这里,我有一个xml节点的集合(Seq),我想基于每个节点填充一个数组:
val nodes = data.child \\"package"
var packages = new Array[Package](nodes.length)
var index = 0
for(val entry <- nodes) {
packages(index) = new Package(entry)
index = index+1
}
Run Code Online (Sandbox Code Playgroud)
虽然它有效但对我来说看起来并不太"scala-ish",我确信有更好的方法可以做到这一点..
任何想法?
我在Outlook 2010中自定义Office功能区,但此问题可能适用于所有Office应用程序:
到目前为止,我已经看到很多网站都有使用回调函数设置editBox文本的说明,或者使用回调函数设置comboBox的值,但是没有具有所有回调函数的确定列表的"通用"引用以及.Net希望传递给每个人的论点.它在哪里?!
TIA,戴夫
所以我知道有符号和无符号int之间的区别在于,有一些用于表示数字是正数还是负数,但这如何适用于char?角色怎样才能是积极的还是消极的?
我打算扩展Display
DataAnnotation属性来保存AccessKey
输入字段的值,这样我就可以在我自己LabelFor<>
和TextBoxFor<>
HtmlHelper扩展中使用它,如下所示:
[Display(Name = "User name", AccessKey = "U")]
Run Code Online (Sandbox Code Playgroud)
在此之前,有人能告诉我是否存在实现声明性访问密钥功能的现有机制?
如果没有,有人可以告诉我如何扩展Display
DataAnnotation属性.:-)
我试图基于外键过滤集合.我有两个映射的类
public class GroupPriceOverrideMap:ClassMap<GroupPriceOverride>
{
public GroupPriceOverrideMap()
{
CompositeId()
.KeyReference(x => x.Service,"ServiceCode")
.KeyReference(x => x.CustomerAssetGroup, "GroupID");
Map(x => x.Price);
Table("accGroupPriceOverride");
}
}
public class CustomerAssetGroupMap:ClassMap<CustomerAssetGroup>
{
public CustomerAssetGroupMap()
{
Id(x => x.GroupID).Unique();
Map(x => x.Description);
References(x => x.Customer).Column("CustomerID");
HasMany<GroupPriceOverride>(x => x.PriceOverrides).KeyColumn("GroupID");
Table("accCustAssetGroup");
}
}
Run Code Online (Sandbox Code Playgroud)
我用它来查询它
_session.Linq<GroupPriceOverride>.Where(x => x.CustomerAssetGroup.GroupID == groupID)
Run Code Online (Sandbox Code Playgroud)
然而,这是产生
SELECT this_.ServiceCode as ServiceC1_9_0_, this_.GroupID as GroupID9_0_, this_.Price as Price9_0_ FROM accGroupPriceOverride this_ WHERE customeras1_.GroupID = @p0
Run Code Online (Sandbox Code Playgroud)
where子句引用了一个不存在的表别名(customeras1).这可能是与customerassetgroup交叉的别名,但不需要执行该交叉.我确信它只是我的映射中的某些内容是错误的但我找不到它.我已经尝试过各种列重命名,以防两个表中存在GroupID导致问题但是没有修复它.有任何想法吗?
编辑 我发现,如果我查询做
_session.Linq<CustomerAssetGroup>().Where(x => x.GroupID == groupID).FirstOrDefault().PriceOverrides;
Run Code Online (Sandbox Code Playgroud)
然后我得到了正确的结果.我还发现,如果我救了一个GroupPriceOverride,然后使用HQL那么就不会被发现,但我仍然可以通过加载父并查看其集合覆盖的找到实体查询它.
_session.CreateQuery("FROM GroupPriceOverride i").List().Count;//returns …
Run Code Online (Sandbox Code Playgroud)