问题列表 - 第29113页

如何将列表转换为可枚举

我遇到以下代码的问题:

public IEnumerable<ISession> GetSessions()
{
    // ...

    using (ProvaDbEntities DBEntities = new ProvaDbEntities(Utilities.ToEntitiesConnectionString()))
    {
        ObjectQuery<session> sessions = DBEntities.session;
        IEnumerable<session> q1 = from session in sessions
                                  where session.site == this.Name
                                  select session;

        List<Session> sessionList = new List<Session>();
        foreach (var s in q1)
        {
            sessionList.Add(new Session(s.id.ToString(),s.username, s.site, new DateTime()));
        }

        IEnumerable<Session> res = sessionList;

        return sessionList;
    }
}
Run Code Online (Sandbox Code Playgroud)

例外是:

无法将对象类型'System.Collections.Generic.List`1 [prova3.Session]'转换为'System.Collections.Generic.IEnumerable`1 [TAP2009.AuctionSite.Interfaces.ISession]'.

看看这个问题似乎是正确的.我错了吗?

c# ienumerable casting list

1
推荐指数
1
解决办法
3221
查看次数

WPF - 将字体保存到磁盘,然后实例化字体的GlyphTypeface抛出异常.为什么?

我正在讨论WPF字形和文档,并在.Net 4框架中遇到了一个空引用异常.

我将真实字体作为.ttf文件提取并保存到磁盘,然后尝试根据字体创建字形.我第一次将字体保存到磁盘并在从同一文件夹中的另一种字体创建GlyphTypeface 基于字体实例化GlyphTypeface 我得到一个空引用异常.

假设我有字体A和B. B尚未保存到磁盘(A可能已经或可能没有保存到磁盘;这似乎并不重要):

1)将B保存到与A相同的文件夹中的磁盘,
2)使用字体A
创建GlyphTypeface ,3)使用字体B =异常创建GlyphTypeface.

Null reference exception at:  
at MS.Internal.FontCache.FontFaceLayoutInfo.IntMap.TryGetValue(Int32 key, UInt16& value)  
at MS.Internal.FontCache.FontFaceLayoutInfo..ctor(Font font)  
at System.Windows.Media.GlyphTypeface.Initialize(Uri typefaceSource, StyleSimulations styleSimulations)  
at System.Windows.Media.GlyphTypeface..ctor(Uri typefaceSource)
Run Code Online (Sandbox Code Playgroud)

如果我重新启动我的应用程序并再次运行它(字体B已经在磁盘上),步骤3不会抛出异常.

将字体保存到磁盘的代码只是从二进制流中编写一个部分并放开文件:

if (!File.Exists(filename))
{
    using (FileStream fs = File.Create(filename, length))
    {
        fs.Write(m_data, m_index, length);
        fs.Close();
    }
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我不想将每个字体都放在自己的文件夹中......

谢谢你的时间.

wpf fonts nullreferenceexception

5
推荐指数
1
解决办法
1646
查看次数

用于设置主页功能的通用JavaScript

是否有任何JavaScript适用于几乎所有浏览器设置网页作为主页?

我正在使用下面的一个.但它只适用于ie和mozilla

    var flag = false;
    function setHomepage(web)
    {
        if (document.all)
        {
            document.body.style.behavior='url(#default#homepage)';
            document.body.setHomePage(web);

        }
        else if (window.sidebar)
        {
            if(window.netscape)
            {
                try
                {  
                    netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
                    flag = true;  
                }  
                catch(e)  
                {  
                    alert("This action was aviod by your browser. If you want to enable please enter about:config in your address line,and change the value of signed.applets.codebase_principal_support to true");
                }
            } 
            if(flag)
            {
                var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components. interfaces.nsIPrefBranch);
                prefs.setCharPref('browser.startup.homepage',web);
            }      
        }
    }
Run Code Online (Sandbox Code Playgroud)

html javascript

10
推荐指数
1
解决办法
2万
查看次数

不在此数据库中使用规范化表是不是很糟糕?

我最近了解了我的信息学课程中的规范化,并且我正在开发一个使用SQLite作为后端数据库的多人游戏.

有关它的一些信息:

简化的结构看起来有点像下面这样:

 player_id |  level | exp  | money | inventory
---------------------------------------------------------
    1      |    3   | 120  | 400   | {item a; item b; item c}
Run Code Online (Sandbox Code Playgroud)

好的.如您所见,我将以字符串形式将表/数组存储在"inventory"列中.这违反了规范化.

但问题是:为玩家的库存制作额外的桌子对我来说只是一个缺点!

  • 我访问数据库的唯一点是:
    • 当玩家加入游戏并加载他的个人资料时
    • 保存球员的个人资料时

当玩家加入时,我从数据库加载他的数据并将其存储在内存中.保存播放器时,我每隔五分钟就会写一次DB.所以我的脚本中实际上只有很少的SQL查询.

如果我在加载时使用了额外的表格,我将不得不:

  • 执行性能和可能更多数据密集型查询以从库存表中获取属于玩家X的所有项目
  • 浏览结果并将其转换为表格以便存储在内存中

保存时:

  • 从库存表中删除属于玩家X的所有物品(玩家可能已经丢弃/出售了一些物品?)
  • 浏览表格并对玩家拥有的每个项目执行查询

如果我将所有玩家数据保存在一个表中:

  • 我只有一个用于保存和加载的查询
  • 一切都会在一个地方
  • 在我的脚本中,我只需要在加载和保存时(de)序列化表

我现在应该怎么做?

我的论点和情况是否有理由反对正常化?

sql database theory normalization

6
推荐指数
2
解决办法
507
查看次数

自定义web.config部分(ASP.NET)

为相对较长的帖子提前道歉 - 我试图提供尽可能多的相关信息(包括代码清单)!

我一直在为web.config文件中的一个自定义部分实现一些我过去几个小时工作的东西,但我似乎无法让它工作.以下是我想用作XML结构的内容:

<mvcmodules>
    <module moduleAlias="name" type="of.type">
        <properties>
            <property name="propname" value="propvalue" />
        </properties>
    </module>
</mvcmodules>
Run Code Online (Sandbox Code Playgroud)

目前,我有以下类设置和工作(有点):

  • ModuleSection
  • ModuleCollection
  • ModulePropertyCollection
  • ModuleProperty

我能看到接近我想要做的方式的唯一方法是将我的声明包装在另一个父调用中.但是,当我这样做时,如果我有多个标签实例("该元素可能只在本节中出现一次."),并且使用一个标签,则信息未被读入对象.

我写了一些基本文档,这样你就可以了解我是如何构建这个文档的,并希望看到我出错的地方

ModuleSection 此类包含ModulesCollection对象

namespace ASPNETMVCMODULES.Configuration
{
    public class ModulesSection : System.Configuration.ConfigurationSection
    {
        [ConfigurationProperty("modules", IsRequired = true)]
    public ModuleCollection Modules
    {
        get
        {
            return this["modules"] as ModuleCollection;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

ModulesCollection 包含Module对象的集合

namespace ASPNETMVCMODULES.Configuration
{
public class ModuleCollection : ConfigurationElementCollection
{
    [ConfigurationProperty("module")]
    public Module this[int index]
    {
        get
        {
            return base.BaseGet(index) as Module;
        }
        set
        {
            if (base.BaseGet(index) …
Run Code Online (Sandbox Code Playgroud)

c# asp.net web-config

6
推荐指数
1
解决办法
3387
查看次数

(python)以递归方式从目录结构中删除大小写?

大写字母 - 它们有什么意义?他们给你的只是rsi.

我想从我的目录结构中删除尽可能多的大写.我将如何编写一个脚本来在python中执行此操作?

它应递归地解析指定的目录,用大写字母标识文件/文件夹名称,并用小写重命名.

python uppercase

3
推荐指数
1
解决办法
3812
查看次数

什么是Cygwin以及如何在Android NDK中使用它

嗨,我是Android NDK Devlopment的新手.我为windows下载了Android NDK 4.我通过docs阅读.但我不清楚它.

第一件事是,我想开发可能是c 0r c ++的本机文件.我认为使用Cygwin将会发挥作用.我不知道或如何使用cygwin.从我刚读过的文档中,Windows需要Cygwin平台.除此之外,我对它没有任何了解.

尚未启动NDK Concepts.Help必需

android-ndk

0
推荐指数
1
解决办法
4465
查看次数

SOAP - 命名空间,这用于什么?

SOAP Web服务中使用的命名空间是什么?

c# asp.net

5
推荐指数
1
解决办法
852
查看次数

找到两个git存储库之间的差异

我已经在Github上分叉了一个项目的git存储库并对它进行了自己的更改.我想在我的存储库和我分叉的原始存储库之间找到差异.有人能告诉我git命令来获得这种差异吗?我需要提交差异进行审核.

原始存储库:

git://github.com/apache/hive.git
Run Code Online (Sandbox Code Playgroud)

我的存储库:

git@github.com:prafullat/hive.git
Run Code Online (Sandbox Code Playgroud)

以下是我的详细信息 .git/config

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git@github.com:prafullat/hive.git
[remote "mirror"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git://github.com/apache/hive.git
Run Code Online (Sandbox Code Playgroud)

我尝试查看有关同一主题的其他已发布的问题,但无法使其发挥作用.

任何帮助将受到高度赞赏.

git

21
推荐指数
3
解决办法
3万
查看次数

如何使用分区表插入和选择数据?

我根据http://www.postgresql.org/docs/8.1/interactive/ddl-partitioning.html上的文档设置了一组分区表

CREATE TABLE t (year, a);
CREATE TABLE t_1980 ( CHECK (year = 1980) ) INHERITS (t);
CREATE TABLE t_1981 ( CHECK (year = 1981) ) INHERITS (t);
CREATE RULE t_ins_1980 AS ON INSERT TO t WHERE (year = 1980)
    DO INSTEAD INSERT INTO t_1980 VALUES (NEW.year, NEW.a);
CREATE RULE t_ins_1981 AS ON INSERT TO t WHERE (year = 1981)
    DO INSTEAD INSERT INTO t_1981 VALUES (NEW.year, NEW.a);
Run Code Online (Sandbox Code Playgroud)

根据我的理解,如果我插入 t (year, a) VALUES (1980, 5),它将转到 t_1980,如果我插入 t (year, a) …

postgresql partitioning rules

5
推荐指数
1
解决办法
1万
查看次数