小编ahs*_*ele的帖子

使用RSBarcodes扫描条形码时执行操作

我正在构建一个使用RSBarcodes for Swift进行 QR码扫描的应用程序.我想要做的ScanViewController是扫描QR码,验证扫描的内容,然后扫描扫描的数据.目前,当检测到QR代码时,我的UI冻结,并且在我收到错误和内存转储后不久:

'NSInternalInconsistencyException',原因:'只在主线程上运行!'.

也许这不是验证QR码的正确位置,或者不适合segue,但如果没有,我想知道验证和segue应该在哪里进行.我唯一的另一个要求是验证仅在检测到QR码时才会发生.

class ScanViewController: RSCodeReaderViewController{
    // Class Variables
    var finalObject: IBuiltCode?
    let ObjectHelper = ObjectBuilder() // Service to validate and build valid scanned objects

    override func viewDidLoad() {
        super.viewDidLoad()

        self.focusMarkLayer.strokeColor = UIColor.redColor().CGColor
        self.cornersLayer.strokeColor = UIColor.yellowColor().CGColor

        self.tapHandler = { point in
            println(point)
        }

        self.barcodesHandler = { barcodes in
            for barcode in barcodes {
                println("Barcode found: type=" + barcode.type + " value=" + barcode.stringValue)
                if let builtObject = self.ObjectHelper.validateAndBuild(barcode,
                      scannedData: barcode.stringValue){
                    println("Good object.")
                    self.performQR()
                } …
Run Code Online (Sandbox Code Playgroud)

ios swift rsbarcodes

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

我可以根据.NET Core中的运行时标识符定义常量吗?

我有一个.NET Core Console应用程序.我的目标是能够有条件地DLLImport调用一个函数并调用它,但仅限于Windows运行时.

我想也许如果我可以访问csproj文件中的运行时标识符,我可以有条件地为该运行时定义一个常量,然后在我的c#中我可以包围DLLImport并调用#if/ #endifblocks.

是否可以csproj根据构建项目的运行时间在一个内部设置编译常量?这是针对<Project Sdk="Microsoft.NET.Sdk">以.NET Core为目标的SDK风格的项目格式(以其开头).

注意:这个问题很接近,但适用于project.json样式项目.

或者,是否有更好的方法来实现我的目标?

c# interop .net-core runtime-identifier

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

程序大小的度量标准

我被要求提供一个关于企业应用程序大小的指标.有问题的应用程序是一个基于Web的应用程序,我不知道如何量化它的大小.明显但没有用的指标是代码行,文件数量等.确定应用程序大小的一些建议方法是什么,它们将提供真正的意义?

申请注意事项:

  • 基于ASP.NET Web Forms的C#App
  • 分层架构
  • 所有数据库通过存储过程交互

size metrics web-applications

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

在Ruby on Rails中,有一种方法可以查看模型的属性

我正在使用NetBeans创建我的第一个Ruby on Rails应用程序.有没有办法可以查看模型的所有属性?我应该只是在数据库中寻找?

ruby netbeans ruby-on-rails netbeans6.7

3
推荐指数
2
解决办法
2130
查看次数

Ruby on Rails数据库迁移不在MySQL表中创建外键

我试图修改Ruby on Rails应用程序中的数据库迁移.我使用MySQL作为我的数据库,并希望将外键添加到正在创建的表中.我正在使用以下代码,并且在遵循在适当的列上创建空值的规范时,不应用外键约束.

class CreateBookCheckOuts < ActiveRecord::Migration
  def self.up
    create_table :book_check_outs do |t|
      t.integer :book_id, :null => false, :options =>
        "CONSTRAINT fk_book_check_out_books REFERENCES books(id)"
      t.integer :person_id, :null => false, :options =>
        "CONSTRAINT fk_book_check_out_people REFERENCES people(id)"
      t.datetime :OutDate, :null => false
      t.datetime :ReturnDate, :null => true

      t.timestamps
    end
  end

  def self.down
    drop_table :book_check_outs
  end
end
Run Code Online (Sandbox Code Playgroud)

mysql migration ruby-on-rails

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

如何测试实现运行速度更快的方法

虽然问题检查输入是否是字符串的类型已经关闭,但两个答案在我的脑海中飙升了一个微优化问题:以下哪两个解决方案会表现更好?

Reed Copsey提供了一个解决方案Char.IsLetter:

string myString = "RandomStringOfLetters";
bool allLetters = myString.All( c => Char.IsLetter(c) );
Run Code Online (Sandbox Code Playgroud)

适合使用正则表达式的解决方案,从马克·拜尔斯:

string s = "RandomStringOfLetters";
bool allLetters = Regex.IsMatch(s, "^[a-z]+$", RegexOptions.IgnoreCase);
Run Code Online (Sandbox Code Playgroud)

不想只问里德或马克的问题我以为我会写一个快速测试来确定哪个表现更好.问题是我没有做过很多代码优化(我倾向于将代码可读性放在首位).

除了在每个运行之前和之后获取时间戳之外,还有哪些其他(更好的?)选项可以确定哪个解决方案运行得更快?

编辑

我修改了Martin的工作答案Console.WriteLine(...)并将其作为控制台应用程序运行.不确定LinqPad究竟是如何运行应用程序的,但结果大致相同:

41
178

c# optimization premature-optimization micro-optimization speed-test

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

使用NHibernate QueryOver,如何在日期之间添加类型安全限制

考虑以下因素QueryOver(季度和中心是传入的变量):

QueryOver.Of<Activity>()
        .Where(Restrictions.On<Activity>(a => a.StartDate).IsBetween(quarter.StartDate).And(quarter.EndDate) ||
               Restrictions.On<Activity>(a => a.EndDate).IsBetween(quarter.StartDate).And(quarter.EndDate) ||
               Restrictions.And(Restrictions.Lt("StartDate", quarter.StartDate), Restrictions.Gt("EndDate", quarter.EndDate)))  //TODO: Refactor this to remove magic strings
        .And(a => a.Centre == centre)
        .OrderBy(a => a.Title).Asc;
Run Code Online (Sandbox Code Playgroud)

此查询工作正常,但我想更改以下限制以删除魔术字符串:

Restrictions.And(Restrictions.Lt("StartDate", quarter.StartDate), Restrictions.Gt("EndDate", quarter.EndDate))
Run Code Online (Sandbox Code Playgroud)

以下是实体(为简洁而剪裁):

public class Quarter
{
    public DateTime StartDate { get; set; }
    public DateTime EndDate { get; set; }

}

public class Activity
{
    public string Title { get; set; }
    public Centre Centre { get; set; }
    public DateTime StartDate { get; set; …
Run Code Online (Sandbox Code Playgroud)

nhibernate queryover

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

是否存在Jeditable的PageDown插件?

我正在使用jQuery 内联编辑插件Jeditable.值得庆幸的是,Jeditable提供了一个插件功能,可以扩展它提供的开箱即用的内联编辑功能.

我希望不要重新发明轮子 - 就像Jeditable 已经存在PageDown插件一样?如果我的Google-fu没有出现任何结果.

markdown plugins jeditable pagedown

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

如何使用twitter bootstrap正确格式化表单

我理解有课程.form-inline.form-horizontal课程等但这引出了一些问题:

  1. 这些似乎只与标签如何与其对应的文本字段/复选框等对齐.这是正确的吗?
  2. 我需要创建一个包含以下内容的表单:
    • 潜在的很多领域和
    • 将它们与bootstrap 12 col网格对齐.

我是否需要将每个字段及其标签包装在一个中div,并给出div一个类名,例如span3

twitter-bootstrap

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

3.0升级后为Castle Windsor配置NHibernate 3.3.1

在一个现有项目中,我刚刚将NHibernate从3.0升级到3.3.升级并不像我想象的那么简单,但前者与我在SO上找到的MySQL连接器不兼容是必需的.

问题是,我不能使用NHibernate.ByteCode.Castle.ProxyFactoryFactory,因为它需要NH 3.0了(我有一个FileLoadExceptionNHibernate, Version=3.0.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4).

看看NH 3.3拉链内部,我看到没有BytecodeProvider.在NH 3.0中有一个"RequiredForLazyLoading"目录,我拿走了我需要的所有内容.

那么,我应该怎么做NH 3.3.1来启用延迟加载?我很满意Castle,我刚刚升级到3.1版

nhibernate castle-windsor

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