小编Aak*_*shM的帖子

如何限制层次结构中的覆盖?

这是一个例子,我只是想知道它将如何实现.

我想只启用子类Animal来设置它们拥有的腿数,但我仍然希望它们能够设置自己的颜色.因此,我想在层次结构中进一步限制类,然后再更改此Legs属性.

public abstract class Animal
{
    public string Colour { get; protected set; }
    public int Legs { get; protected set; }

    public abstract string Speak();
}

public class Dog : Animal
{
    public Dog()
    {
        Legs = 4;
    }

    public override string Speak()
    {
        return "Woof";
    }
}

public sealed class Springer : Dog
{
    public Springer()
    {
        Colour = "Liver and White";
    }
}

public sealed class Chihuahua : Dog
{
    public Chihuahua() …
Run Code Online (Sandbox Code Playgroud)

.net c# inheritance overriding

7
推荐指数
3
解决办法
987
查看次数

当找不到值时,C#List <T> .BinarySearch返回值

List<T>如果项目不存在,我对BinarySearch方法感到困惑.

我有

List<long> theList = {1, 3, 5, ...}.
Run Code Online (Sandbox Code Playgroud)

theList.BInarySearch(0)返回0,并按theList.BInarySearch(3)预期返回1.

但是,如我所料,theList.BinarySearch(1)返回-2,而不是-1.MSDN手册说:"返回值:排序列表中项目的从零开始的索引,如果找到项目;否则,是负数,它是下一个元素的索引的按位补码,大于项目或,如果没有更大的元素,则为Count的按位补码."

一个"按位补码"?我在这里错过了什么,为什么会这样theList.BinarySearch(1) != -1

c# list generic-list

7
推荐指数
2
解决办法
4587
查看次数

为什么类没有静态或常量属性以及同名的实例属性?

直到现在我才真正质疑过这个问题.我有一个包含许多字段的输入模型,我想通过输入模型显示属性的字符串名称,以便我的网格可以使用它们:

public class SomeGridRow
{
    public string Code { get;set; }
    public string Description { get;set; }

    public const string Code = "Code";
}
Run Code Online (Sandbox Code Playgroud)

显然,这给出了错误:

'SomeGridRow'类型已经包含'Code'的定义

为什么CLR无法应对两个同名的属性,在我看来,这两个属性是分开的?

string code = gridRow.Code;          // Actual member from instantiated class
string codeField = SomeGridRow.Code; // Static/Const
Run Code Online (Sandbox Code Playgroud)

我现在只是Fields在我的输入中使用一个子类,所以我可以使用SomeGridRow.Fields.Code.这有点乱,但它确实有效.

c#

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

使用c#在连续纸上打印

我写了一个POS系统.我想在连续纸上打印,但我不知道如何实现这一目标.

我使用.net(C#).我尝试使用crystal report以及System.drawing类.

任何想法都会对我有所帮助......

.net c# printing crystal-reports

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

使用AJAX,我是否需要关心ASP.NET中的线程安全性?

问题是,是否有可能从多个线程执行同一会话的请求?ASP.NET中的方法是否可重入?特别是我们使用的是AJAX,这意味着正在进行异步请求.

这是否意味着将锁定放在会话内放置的对象上?

我知道在处理静态和应用程序范围的变量时,锁是必不可少的,但问题对于会话对象是否同样如此?

.net asp.net ajax multithreading locking

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

在批处理脚本中禁止"按任意键继续"

我正在写一个批处理脚本.在命令窗口中的一个阶段之后,它会显示"按任意键继续"并停止,并在按下某些内容后脚本继续.如何在脚本中防止这种情况?

batch-file

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

我必须在所有类上实现IDisposable,还是基类足够?

我被告知我需要处理我的Entity Framework存储库类的实例,并创建了一个基类来强制执行此实现.

我需要咨询专家:IDisposable通过基类实现是否可以接受?

请注意,存储库类没有类成员变量.

/// Sample repository.  Note that I return List<T> as IEnumerable, 
/// and I use IDisposable 
///
public class CompanyRepository : DisposableBase, ICompanyRepository
{
    public IEnumerable<CompanyDetail> GetOneCompany(int? CompanyID)
    {
        var t = from c in _entities.CompanyDetail
                where c.CompanyID == CompanyID.Value
                select c;
        return t.ToList();
    }
}

/// <summary>
/// Disposable implementation based on advice from this link:
/// from Http://www.asp.net/entity-framework/tutorials/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application
/// </summary>
public class DisposableBase : IDisposable
{
    protected TLSAdminEntities1 _entities;

    public DisposableBase() …
Run Code Online (Sandbox Code Playgroud)

.net c# garbage-collection idisposable entity-framework-4.1

7
推荐指数
2
解决办法
4680
查看次数

使用列表上的LINQ基于连续日期返回子集列表

我有一个场景,我有一个对象列表,在对象中有一个日期时间字段.我试图找出是否有办法使用LINQ按顺序日期时间对列表进行分组,并返回列表的子集,其中顺序日期时间为范围.

public virtual IList<LineItem> LineItems { get; set; }
...
public class LineItem
{
    public virtual string Status { get; set; }
    public virtual DateTime TransDate { get; set; }
    ...
}
Run Code Online (Sandbox Code Playgroud)

所以如果我LineItemStatus = P所有人一起拥有6 秒

TransDate = { 8/1/2011 , 8/2/2011 , 8/3/2011 , 8/5/2011 , 8/6/2011 , 8/9/2011 }
Run Code Online (Sandbox Code Playgroud)

分别,我想返回以下列表:

{ (P, 8/1/2011-8/3/2011) , (P,8/5/2011-8/6/2011) , (P,8/9/2011) }
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?我可以手动迭代列表并检查TransDate以查看它是否是顺序的,我只是在寻找一种更优雅(最好是LINQ)的方式.谢谢!

c# linq

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

android - 在galaxy nexus上显示菜单按钮

我需要在galaxy nexus上显示一些活动的菜单按钮.我无法找到如何做到这一点,因为它默认隐藏它.我不想创建一个动作栏,因为它需要更多空间我想用于其他事情.当将"android:targetSdkVersion"值设置为低于14时,它似乎显示菜单按钮,但除此之外,它隐藏了它.顺便说一句,活动需要全屏,没有标题/动作栏.

非常奇怪的是,默认情况下,对于这么多地方(甚至是启动器),此按钮并未显示,并且在某些地方它确实存在.对于这么多Android设备来说,这样的按钮是非常基本的按钮.谷歌决定不仅如此,而是切换按钮更重要的是显示它默认显示(不知道是否可以隐藏它,但我猜不是,因为主页按钮在长按时不再做任何事情) .

无论如何,请帮助我.我对android 4很新.

android menu galaxy nexus-s android-4.0-ice-cream-sandwich

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

视频无法以全屏模式播放

当我在FULLSCREEN中尝试在webview中播放嵌入视频时,我正在获得NPE.它适用于3.0蜂窝,但不适用于ICS 4.0+.知道如何解决这个问题吗?

java.lang.NullPointerException
    at android.webkit.PluginFullScreenHolder.show(PluginFullScreenHolder.java:85)
    at android.webkit.WebView$PrivateHandler.handleMessage(WebView.java:8849)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:4424)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:511)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

任何建议都将非常感激.谢谢

android webview android-4.0-ice-cream-sandwich

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