小编rae*_*ae1的帖子

如何在const领域使用科学记数法?

我工作在一个数学库,并且由于与工作的内在困境double我编码人人平等的比较型a == bMath.Abs(a - b) <= epsilon.

此外,默认情况下,我希望以最大考虑精度生成格式化的字符串.也就是说,如果epsilon0.001我想要的默认格式N3.

我很高兴我做了以下事情:

public static class Math3D
{
     internal const int ROUND = 3;
     public const double Epsilon = 1e-ROUND;
}
Run Code Online (Sandbox Code Playgroud)

......我收到了编译错误.显然这是不允许的.

有了这个限制,我认为我无法将两个相互依赖的常量定义为consts.显然我可以定义Epsilon为只读字段,但我觉得这样做在概念上是错误的.我错过了一个如何做到这一点的明显方法吗?

c#

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

为什么Lucene数值范围搜索不起作用?

i传递给搜索的字符串是(Experience:[1 TO 5])搜索所有数字的地方,如15,25,21,51等.我需要在数字1和5之间搜索,

using Lucene.Net.Store;

var results = new List<SearchResults>();

// Specify the location where the index files are stored
string indexFileLocation = @"G:\Lucene.Net\Data\Document";
var dir = Lucene.Net.Store.FSDirectory.GetDirectory(indexFileLocation);
var reader = IndexReader.Open(dir);
var searcher = new IndexSearcher(reader);
var analyzer = new StandardAnalyzer();
var queryParser = new QueryParser("Prof_ID", analyzer);

// <default field> is the field that QueryParser will search if you don't 

string special = "";
if (!txtkeyword.Text.Equals(""))
{
    special = special + "(Experience:[1 TO 5])";
}

var …
Run Code Online (Sandbox Code Playgroud)

c# lucene.net

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

如何在使用NHibernate锁定模式更新之前锁定对象?

首先让我说明我想要完成的事情.我有一个填充了工作的表.并且有一个Web服务,其方法允许更改所调用的作业数据SaveJob.此方法检索作业及其所有数据,在新数据上运行验证(需要对其他表进行一些数据库查询),然后将其保存回数据库.这有点慢.大约一秒钟.

会发生什么事有时SaveJob会在同一个工作中将两个电话紧密地联系在一起并且它们会相互重叠.现在,这是唯一的Web服务器,但我希望我的解决方案Web服务器场兼容,所以即使我知道如何使用单例来解决这个问题,我更愿意让数据库处理这些锁.

问题是我可以使用NHibernate和SQL Server数据库锁来尝试读取已被另一个SaveJob调用更改的作业时阻止第二次SaveJob调用吗?

我相信答案是肯定的,但我不确定如何去做.我已经阅读了有关该文档的文档ISession.Lock(),我相信我需要的是使用NHibernate.LockMode.Upgrade

我的下一个问题是这个锁何时被释放?

我假设它在事务提交时被释放但我找不到任何明确说明这一点的文档.

但是,如果是这种情况,那么有没有办法让我打开另一个事务并运行一些查询而不关闭我在第一时间抓住工作时开始的事务?或者我必须在一次交易中完成所有这些操作吗?

.net nhibernate

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

为什么同时映射和减少运行?

我是Hadoop的新手.我记得我从某个地方了解到,在Hadoop中,所有地图功能都必须在reduce函数启动之前完成.

但是当我运行这样的地图缩减程序时,我才得到了打印输出:

map(15%), reduce(5%)
map(20%), reduce(7%)
map(30%), reduce(10%)
map(38%), reduce(17%)
map(40%), reduce(25%)
Run Code Online (Sandbox Code Playgroud)

为什么他们并行?

hadoop mapreduce

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

内部与外部类的Builder模式?

在类外使用构建器模式有什么好处?

课内:

public class Person {
    private String name;
    private String eyeColor;
    private String hairColor;

    public Person setName(String name) {
        this.name = name;
        return this;
    }

    public Person setEyeColor(String eyeColor) {
        this.eyeColor = eyeColor;
        return this;
    }

    public Person setHairColor(String hairColor) {
        this.hairColor = hairColor;
        return this;
    }
} 

// Example usage:
Person p = new Person()
                 .setName("Bob")
                 .setHairColor("Black")
                 .setEyeColor("Brown")
Run Code Online (Sandbox Code Playgroud)

课外:

public class Person {
    private String name;
    private String eyeColor;
    private String hairColor;

    public Person(String name, String eyeColor, String …
Run Code Online (Sandbox Code Playgroud)

java design-patterns builder

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

为什么EF eager loading包含不按预期工作?

我有这个存储库,

public class Repository<TEntity> : IRepository<TEntity> where TEntity : class
{
    private readonly DbContext context;
    private readonly DbSet<TEntity> dbEntitySet;

    public Repository(DbContext context)
    {
        if (context == null)
            throw new ArgumentNullException("context");

        this.context = context;
        this.dbEntitySet = context.Set<TEntity>();
    }

    public IEnumerable<TEntity> GetAll()
    {
        return this.dbEntitySet;
    }

    public IEnumerable<TEntity> GetAll(string include)
    {
        return this.dbEntitySet.Include(include);
    }

    public IEnumerable<TEntity> GetAll(string[] includes)
    {
        foreach (var include in includes)
            this.dbEntitySet.Include(include);

        return this.dbEntitySet;
    }

    public void Create(TEntity model)
    {
        this.dbEntitySet.Add(model);
    }

    public void Update(TEntity model)
    {
        this.context.Entry<TEntity>(model).State = …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework eager-loading

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

可以在PostSharp 3.1中的CompileTimeInitialize中使用Reflection吗?

是否可以CompileTimeInitialize在PostSharp 3.1中使用反射?

以下代码在3.0中工作:

public class TestClass
{
    public string TestField;

    [TestAspect]
    public void TestMethod() { }
}

public class TestAspect : OnMethodBoundaryAspect
{
    private LocationInfo locationInfo;

    public override void CompileTimeInitialize(MethodBase method, AspectInfo aspectInfo)
    {
        this.locationInfo = new LocationInfo(method.ReflectedType.GetField("TestField"));
    }

    public override void OnSuccess(MethodExecutionArgs args)
    {
        Console.WriteLine(this.locationInfo);
    }
}
Run Code Online (Sandbox Code Playgroud)

随着3.1升级,this.locationInfo成为Missing Property并访问其任何属性的原因NullReferenceException.

我这样做是错误的还是在3.1升级中改变了?如果是这样,你能否建议我采取正确的方法来解决这个问题?

PS:如果我设置this.locationInfoRuntimeInitialize东西正常工作.

c# postsharp

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

如何通过用户的XAML动态地向UserControl添加控件?

我想创建一个包含TextBlock和StackPanel的用户控件,该控件允许用户在XAML中动态地将他/她自己的控件添加到用户控件.

以下是我的UserControl的示例XAML:

<UserControl x:Class="A1UserControlLibrary.UserControlStackPanel"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             mc:Ignorable="d" 
             d:DesignHeight="200" d:DesignWidth="300">
    <StackPanel>
        <TextBlock Text="I want the user to be able to add any number of controls to the  StackPanel below this TextBlock."
                   FontFamily="Arial" FontSize="12" FontWeight="DemiBold" Margin="5,10,5,10" TextWrapping="Wrap"/>
        <StackPanel>
            <!-- I want the user to be able to add any number of controls here -->
        </StackPanel>
    </StackPanel>
</UserControl>
Run Code Online (Sandbox Code Playgroud)

我希望用户能够将此用户控件嵌入到他们的XAML中,并将他们自己的控件添加到用户控件的堆栈面板中:

<uc:A1UserControl_StackPanel x:Name="MyUserControl_Test" Margin="10" Height="100">
    <Button Name="MyButton1" Content="Click" Height="30" Width="50"/>
    <Button Name="MyButton2" Content="Click" Height="30" Width="50"/>
    <Button Name="MyButton3" Content="Click" Height="30" Width="50"/>
</uc:A1UserControl_StackPanel>
Run Code Online (Sandbox Code Playgroud)

使用上述XAML执行此操作不起作用.有任何想法吗?

c# wpf xaml user-controls

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

如何获取元数据自定义属性?

我有一个类在类级别定义数据注释.元数据类具有与之关联的自定义属性,以及通常的DisplayName,DisplayFormat等.

public class BaseMetaData
{
    [DisplayName("Id")]
    public object Id { get; set; }

    [DisplayName("Selected")]
    [ExportItem(Exclude = true)]
    public object Selected { get; set; }
}

[MetadataType(typeof(BaseMetaData))]
public class BaseViewModel
{
    public int Id { get; set; }
    public bool Selected { get; set; }
Run Code Online (Sandbox Code Playgroud)

给定类型T,如何从元数据类中检索自定义属性?下面的尝试不起作用,因为元数据属性来自BaseViewModel而不是BaseMetaData类.

需要一般工作,即不能做typeof(BaseMetaData).GetProperty(e.PropertyName).想知道是否有从类中获取MetadataType的方法,那么它将使其成为可能.

var type = typeof (T);
var metaData = ModelMetadataProviders.Current.GetMetadataForType(null, type);

var propertMetaData = metaData.Properties
    .Where(e =>
    {
        var attribute = type.GetProperty(e.PropertyName)
            .GetCustomAttributes(typeof(ExportItemAttribute), false)
            .FirstOrDefault() as ExportItemAttribute; …
Run Code Online (Sandbox Code Playgroud)

c# reflection data-annotations

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

如何检查我的字符串是否以大写字符开头

我在iPhone上使用cocoa,我正在寻找一些方法,如:

NSString *s = @"Hello";

[s isStringStartsWithUpperCaseCharacter]

-(BOOL) isStringStartsWithUpperCaseCharacter;
Run Code Online (Sandbox Code Playgroud)

字符串的第一个字母可以是非ASCII字母,如:Á,Ç,Ê...

有什么方法可以帮助我吗?

我的文档中看到,也有一些方法,将字符串转换为大写和小写但也有问,如果字符串是没有方法lowercaseuppercase.

string iphone

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