小编Rey*_*ldi的帖子

订阅Angular 2中的路径参数和数据

我的表单需要访问路由参数和数据.它们是可观察的,所以我需要订阅才能访问它们的值.我的问题是,如何在一次订阅中同时访问它们?

this._route.params.subscribe(
  params => {
    getData(params['id'], data['id2'] <=== i need data value too. how do i get this???)
  });
Run Code Online (Sandbox Code Playgroud)

为什么棱角分裂将它们放在两个独立的可观测量中?

angular

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

使用firebird中的iif更新varchar字段时的空格

执行此查询时,我看到奇怪的结果

update sd_invodt set line_type=iif(is_promo=1, 'campaign', 'item')
Run Code Online (Sandbox Code Playgroud)

line_type字段中的值为"item ".有价值的空白.但是当我执行这个查询时

update sd_invodt set line_type='item'
Run Code Online (Sandbox Code Playgroud)

我没有白色空间.

现在我必须使用trim作为解决方法

update sd_invodt set line_type=trim(iif(is_promo=1, 'campaign', 'item'))
Run Code Online (Sandbox Code Playgroud)

我使用最新的firebird 2.5.Line_type是varchar(15).

这是Firebird中的错误吗?

编辑

我已经使用新数据库进行了测试,问题仍然存在.

sql firebird firebird2.5

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

如何正确处理对象:注入与拥有

我有一个关于处理对象的问题.

考虑这个IDisposable课程

public class MyClass : DisposableParentClass
{
    private MyProp _prop;        

    public MyClass(MyProp prop)
    {
        _prop = prop;
    }

    public MyClass()
    {            
        _prop = new MyProp();
    }

    protected override void Dispose(bool disposing)
    {
        if (disposing)
        {
            _prop.Dispose();
        }

        base.Dispose(disposing);
    }

}       
Run Code Online (Sandbox Code Playgroud)

在第一个构造函数上,MyProp注入.所以MyClass不是对象的所有者.但是在第二个构造函数上,MyProp是在本地创建的.我是否应该一直处理MyProp,或者我应该先检查它是否注入.

public class MyClass : DisposableParentClass
{
    private MyProp _prop;        
    private bool _myPropInjected = false;

    public MyClass(MyProp prop)
    {
        _prop = prop;
        _myPropInjected = true;
    }

    public MyClass()
    { …
Run Code Online (Sandbox Code Playgroud)

.net c#

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

是否可以告诉自动映射器在运行时忽略映射?

我正在使用 Entity Framework 6 和 Automapper 将实体映射到 dtos。

我有这个型号

public class PersonDto
{
    public int Id { get; set; }
    public string Name { get; set; }
    public AddressDto Address { get; set; }
}

public class AddressDto
{
    public int Id { get; set; }
    public string Street { get; set; }
    public string City { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我使用 automapper Queryable Extension从实体映射 dto。

var personDto = dbContext.People.Project().To<PersonDto>();
Run Code Online (Sandbox Code Playgroud)

上述方法的问题在于,它会使 EF 始终加载地址实体。我希望仅当我使用 include(x => x.Address) 明确告诉他们时才加载地址。如果我在自动映射器映射中指定ignore(),则不会加载地址。是否可以告诉自动映射器在运行时忽略地址属性?我正在使用的自动映射器可查询扩展不支持“条件或映射后”等所有功能。有什么解决方法吗?

c# automapper automapper-3

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

如何在ASP MVC中实现工作单元,存储库和业务逻辑?

我目前被分配到使用实体框架的asp mvc项目.这将是一个业务线应用程序.我想使用存储库和工作单元模式开发此应用程序.我是这个模式的新手(也是.net的新手),我在理解模式以及如何实现它时遇到了问题.

我已阅读了大量文章,我认为这就是我的应用程序应该如何

实体框架 - >存储库 - >工作单元 - >客户端(Asp MVC)

我附上了本文中的一些代码 http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/implementing-the-repository-and-unit-of-work-patterns-in -an-ASP净MVC应用程序

using System;
using ContosoUniversity.Models;

namespace ContosoUniversity.DAL
{
    public class UnitOfWork : IDisposable
    {
        private SchoolContext context = new SchoolContext();
        private GenericRepository<Department> departmentRepository;
        private GenericRepository<Course> courseRepository;

        public GenericRepository<Department> DepartmentRepository
        {
            get
            {

                if (this.departmentRepository == null)
                {
                    this.departmentRepository = new GenericRepository<Department>(context);
                }
                return departmentRepository;
            }
        }

        public GenericRepository<Course> CourseRepository
        {
            get
            {

                if (this.courseRepository == null)
                {
                    this.courseRepository = new GenericRepository<Course>(context);
                }
                return courseRepository;
            }
        }

        public …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc design-patterns domain-driven-design entity-framework

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

在将其保存在实体框架中之前是否可以获取Identity Field值

我有一个客户和销售表

CUSTOMER
--------------
Id (int auto increment)
Name

SALES
---------------
Id (int auto increment)
CustomerId (int)
OrderTotal (decimal)
Run Code Online (Sandbox Code Playgroud)

有了Guid,我可以做到这一点.

dbTransaction = dbContext.Database.BeginTransaction(isolationLevel);

var customer = new Customer()
{
  Id = Guid.NewGuid(),
  Name = "John Doe"
};

var sales = new Sales() 
{
  Id = Guid.NewGuid(),
  CustomerId = customer.Id,
  OrderTotal = 500
};

dbContext.SaveChanges();
dbTransaction.Commit();
Run Code Online (Sandbox Code Playgroud)

如果我的主键是int(使用DatabaseGeneratedOption.Identity),我该怎么做?

c# sql-server entity-framework azure-sql-database

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

在我的应用程序中手动生成guid或让sql server/azure sql为我生成它更好

如何在我的应用程序中为我的实体生成guid,这些实体将由实体框架存储到sql azure.

现在我用Id = Guid.NewGuid().它是否正确?

编辑

为了澄清我为什么要这样做,下面是我的解释

我的朋友告诉我,sql server可以使用"NewID()"生成guid.现在我使用"Guid.NewGuid()"在我的应用程序中生成guid.我应该使用哪一个?对我来说,我目前的方法更方便,因为我甚至在将其保存到数据库之前就获得了guid值.每种方法的上/下方是什么?

c# sql-server entity-framework azure-sql-database

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

Firebird 在 where 和 order by 子句上的性能

我有一个查询,基本上可以找到特定日期范围内某些商品的最后成本。

select first 1 lastcost from stock 
where itemid = :itemid and date > :startdate and date < :enddate 
order by date desc
Run Code Online (Sandbox Code Playgroud)

此查询需要几秒钟才能完成数百万条记录,因为“>”不使用索引。如果我按年/月拆分查询并迭代直到达到开始日期(假设每月有 100 万条记录),会更快吗?

while (endate > startdate) do
begin
  var_year = extract(year from :endate);
  var_month = extract(month from :endate);
  select first 1 lastcost from stock 
  where itemid = :itemid and year=:var_year and month=:var_month
  order by date desc
  enddate = dateadd (-1 month to enddate);
end
Run Code Online (Sandbox Code Playgroud)

这几天我无法访问 Firebird,所以我自己无法尝试。

sql firebird

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

取消 firebird 中长时间运行的查询或事务

我如何安全地中止/取消当前正在运行的查询/事务。使用 gfix -shut 可能会损坏数据库。我正在使用delphi和firebird 2.5

预先感谢雷纳尔迪

delphi firebird

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

如何在角度ui-router状态下添加guid正则表达式

我有这条路

.state('mystate', {
    url: '/{id}',
    templateUrl: '/views/partial.html'
});
Run Code Online (Sandbox Code Playgroud)

id param应该是像这样的"2a542f61-5fff-4607-845d-972e6c3ad1e4"形式的guid.我如何在网址"url:'/ {id:?我应该放在这里}}"中添加这个.

javascript angularjs angular-ui angular-ui-router

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

Delphi扩展类

首先,对不起,如果标题有点令人困惑.

我打算开发一个小型的erp应用程序.这个应用程序将使用插件/插件.此插件可能会添加或扩展基本应用程序的某些模块.

例如,我有TCustomer类,其属性为"id","name".插件1将添加属性"dateofbirth".插件2将添加属性"balance"和方法"GetBalance".

插件1和插件2彼此不了解.可能安装了插件1而不是插件2,反之亦然.所以这两个插件都必须继承基本的tcustomer类.

问题是当两个插件都安装完毕.如何在两个插件中获得扩展属性?我还必须扩展表单以添加控件以显示新属性.

可以用delphi完成吗?实现这一目标的最佳方法是什么?也许你可以指点我的一些例子?

谢谢,对不起我可怜的英国人Reynaldi

delphi

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

在C#中获取URL的某些部分

我需要从网址获取版本没有部分.网址将如下所示" http://myweb.com/api/v1/customer ".我需要从网址获取"1"值.我怎样才能做到这一点?

提前致谢

c# regex

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