小编obe*_*eak的帖子

继承自System.Object

众所周知,C#类只能从Single Base类继承它是如何理解的,因为所有类都派生自System.Object?

另外,如果我查看类ValueType定义(例如),我知道它直接从System.Object继承,我发现它只是一个抽象类.我希望看到:公共抽象类ValueType:System.Object

c#

5
推荐指数
3
解决办法
4252
查看次数

存储指向方法参数的指针以供以后重用

类似于带有自由变量的lambda表达式如何工作,我想实现我自己的闭包类,它捕获一些方法参数.

public class Closure<TObject, TVariable>
{
    public TVariable Variable { get; set; }
    public Func<TObject, bool> Predicate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后我有一些适用于DateTime实例的类.应该使用此闭包类的方法之一是:

// Original Version
public IEnumerable<Item> GetDayData(DateTime day)
{
    this.items.Where(i => i.IsValidForDay(day));
}
Run Code Online (Sandbox Code Playgroud)

我想将它转换为使用Closure类.问题是我想重用(性能原因)我的Closure类实例:

private Closure<Item, DateTime> closure = null;
public IEnumerable<Item> GetDayData(DateTime day)
{
    if (closure == null)
    {
        this.closure = new Closure<Item, DateTime>() {
            Variable = reference of "day" param, <=== HOW ????????
            Predicate = i => i.IsValidForDay(this.closure.Variable)
        }
    } …
Run Code Online (Sandbox Code Playgroud)

c# lambda pointers

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

有序链表与B树

如果您将b +树作为索引,那么这似乎与有序链接列表非常相似。但是,有序链表似乎具有一些优点,例如,不必导航树结构,也不必在节点装满时重建节点,并且不必在无平衡时重建树。

谁能回答使用b树而不是有序列表的原因?

database indexing b-tree

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

从Google TV App打开显示器

有没有办法使用标准Android API使用Google TV Android应用打开或关闭电视[技术上让它进入睡眠状态]?

我知道我可以用IR或其他方式破解某些东西,但我真的只是喜欢我的应用程序执行与我的GTV遥控器上的电视电源按钮相同的功能.

android google-tv

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

如何检测Android弹出窗口的触摸输入

我正在开发一个记录应用程序的所有触摸输入的android库.我已经设法拦截活动(和片段)的所有触摸输入,但不是弹出窗口.

如何检测活动中弹出的新窗口的触摸输入?

以下代码显示了我如何拦截活动窗口的所有触摸输入.

Application.onCreate()我打电话里面Application.registerActivityLifecycleCallbacks(),并在回调后注册:

override fun onActivityCreated(activity: Activity, savedState: Bundle?) {    
    val localCallback = activity.window.callback
    activity.window.callback = object : ActivityWindowCallbackWrapper(activity, localCallback) {
        override fun dispatchTouchEvent(motionEvent: MotionEvent): Boolean {
            //over here I can log all touch input    
            return super.dispatchTouchEvent(motionEvent)
        }

        override fun onWindowFocusChanged(hasFocus: Boolean) {
            //here I can detect that some popup has popped up 
            //if hasFocus == false it means that some other window has focus -> probably popup 
            super.onWindowFocusChanged(hasFocus)
         }
     }
}
Run Code Online (Sandbox Code Playgroud)

此代码拦截活动窗口的所有触摸事件,它识别何时聚焦不同的窗口(另一个窗口弹出),但我不知道如何为新聚焦的窗口注册回调.

是一个关于如何检测应用程序的所有根视图的一个很好的例子,但是我不能在它们上注册任何回调.

android

5
推荐指数
0
解决办法
116
查看次数

如何生成下一个主键值

我使用的是 Visual Studio 2010 PostgreSQL 9.x Npgsql

我正在尝试从 C# WinForms 应用程序上的字段插入数据。我只是不知道如何即时生成/检索下一个主键值。这是我的列名:

EpiphanyKey [PK] bigserial 交易数字许可证字符 dateOfActv 日期时间时间

我需要插入命令是“会话安全的”,因为多个人可以同时将数据输入到数据库中。

 NpgsqlConnection conn = new NpgsqlConnection("Server=localhost;Port=5432;User Id=postgres;Password=password;Database=epiphany;"); // postgres 8.3 on my test system
 conn.Open(); // opens the connection

 NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO wsmsmrs210 (epiphanyKey,transaction,license,dateOfActv,time, conn);

   NpgsqlDataReader dr = cmd.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,NpgsqlCommand cmd = ... 语句无法正常工作,因为我不知道主键值 epiphanyKey 的下一个主键值。

在将查询发送到数据库时生成下一个主键值的任何想法或代码片段?

c# postgresql npgsql winforms

4
推荐指数
2
解决办法
3722
查看次数

缺少参考

在项目中我引用了Microsoft.Office.Word.Server并且在代码中我有方法接受类型为ConversionJob的参数,但是当我尝试编译它时我有一个错误

The type or namespace name 'Office' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)    


The type or namespace name 'ConversionJob' could not be found (are you missing a using directive or an assembly reference?) 
Run Code Online (Sandbox Code Playgroud)

但是当在ConversionJob上按f12时,它让我进入了阶级辩护

using Microsoft.Office.Word.Server.Service;
using Microsoft.SharePoint;
using System;

namespace Microsoft.Office.Word.Server.Conversions
{
    public class ConversionJob
    {
        public ConversionJob(WordServiceApplicationProxy serviceApplicationProxy, ConversionJobSettings settings);
        public ConversionJob(WordServiceApplicationProxy serviceApplicationProxy);
Run Code Online (Sandbox Code Playgroud)

...

在此输入图像描述

怎么了?

目标框架是.Net framework 3.5

解决方案
我解决了这个问题.我查看输出,有消息:

Microsoft.Common.targets(1360,9): warning MSB3268: The primary reference "<assembly reference>" could not …
Run Code Online (Sandbox Code Playgroud)

c# reference

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

如何在ViewModels之间正确共享Entity Framework ContextObject?

我是WPF/MVVM/Entity Framework的新手,同时处理很多概念.我正在创建一个只有一个主视图的WPF应用程序,它分为两部分:1个UserControl用于我的数据的主视图,另一个用户控件用于详细视图.所有数据都存储在通过Entity Framework实体模型生成的数据库中.

到目前为止,我设法做了我想做的事情(我使用MVVM灯):数据绑定,命令,eventToCommand ...我在1个VS项目中使用以下架构:1个用于Views的文件夹,1个用于ViewModels,1个用于实体定义.

我使用MVVM Light Messaging将数据从master传递给详细的userControl,当我尝试更新一个实体时,我遇到异常告诉我无法更新,因为我尝试更新链接到ObjectContext(在MasterViewModel中声明)的一个对象来自另一个对象的一个​​对象(在DetailedViewModel中声明)

如何在ViewModels之间共享EF ObjectContext?我读了一些关于存储库或UnitOfWork的东西,但我并没有真正看到我如何在我的情况下使用它.

附属问题:使用EF和n层应用程序访问实体的最佳做法是什么?存储库是答案吗?考虑到类已存在的事实,我的解决方案体系结构中是否应该有"Model"文件夹?

wpf entity-framework mvvm-light

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

console.writeline点击一下

有人可以告诉我如何制作播放器可以点击的文本以便执行Console.WriteLine吗?

我在C#中使用控制台应用程序.

c#

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

OpenNI RGB图像到OpenCV BGR IplImage转换?

可以从OpenNI图像元数据获得的图像被布置为RGB图像.我想将其转换为OpenCV IplImage,默认情况下假设数据存储为BGR.我使用以下代码:

    XnUInt8 * pImage = new XnUInt8 [640*480*3]; 
    memcpy(pImage,imageMD.Data(),640*480*3*sizeof(XnUInt8));
    XnUInt8 temp;
    for(size_t row=0; row<480; row++){
        for(size_t col=0;col<3*640; col+=3){
            size_t index = row*3*640+col;
            temp = pImage[index];
            pImage[index] = pImage[index+2];
            pImage[index+2] = temp;
        }
    }
    img->imageData = (char*) pImage;
Run Code Online (Sandbox Code Playgroud)

C/C++中执行此转换的最佳方式(最快)是什么,使RGB图像变为BGR(以IplImage格式)?

rgb opencv bgr openni

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