问题列表 - 第30179页

Linq错误 - "NotSupportedException:用于查询运算符的不支持的重载'选择'"

我有以下Linq查询:

var tmp = 
    from container in Container
    join containerType in ContainerType on container.ContainerType equals containerType
    where containerType.ContainerTypeID == 2
    select new { ContainerID = container.ContainerID, TypeID = container.ContainerTypeID};

var results = tmp.Select((row, index) => new { row.ContainerID, row.TypeID, ContainerIndex = index })
Run Code Online (Sandbox Code Playgroud)

这样,这很好.如果我添加以下内容,那么我可以在LinqPad中看到结果,我收到此消息标题中描述的错误:

results.Dump();
Run Code Online (Sandbox Code Playgroud)

这个错误不是LinqPad错误,它来自Linq,我不明白这是什么意思.

谢谢.

linq

8
推荐指数
1
解决办法
3560
查看次数

django 中的单向一对多和多对可能

我是 Django 的新手。我有 2 个简单的对象,我们称它们为 - File 和 FileGroup: - FileGroup 可以保存一个文件列表,根据“顺序”字段进行排序。- 每个文件可以与多个组相关联。

所以基本上,数据库表将是:1) File 2) File_Group 3) File_Group_Mapping 表,除了文件和文件组的 fk 之外,还有一个名为“order”的列。

这里存在多对多关系,但 File 对象不应该知道 FileGroup 的存在(在我的情况下没有意义)

我的问题 - 有没有办法在这里创建单向多对多/一对多关系?如何使用 django 对其进行建模?

我找不到通过 django 使其成为单向的方法。我看到了一个使用类似的解决方案 -

class FileGroup(...):
    files = models.ManyToManyField(File, through='FileGroupMapping')
Run Code Online (Sandbox Code Playgroud)

但这将使 File 对象知道 FileGroup。

我也可以通过在模型文件中映射 File_Group_Mapping 表来做到这一点 -

class FileGroupMapping(...):
     files = models.ForeignKey(File)
     groups = models.ForeignKey(FileGroup)
     order = models...
Run Code Online (Sandbox Code Playgroud)

通过 django 执行此操作的最佳方法是什么?

谢谢

django entity-relationship django-models

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

如何自动对MKAnnotations进行缩放级别分组?

如果用户缩小MKMapView,我希望彼此接近的MKAnnotations自动分组为一个"组"注释.如果用户缩放,则应将"组"注释再次拆分为唯一/原始注释.

苹果已经在iOS 4 Photos.app中做到了这一点

是否有一种常见的"预定义"方式来做到这一点?

iphone zoom mapkit mkmapview mkannotation

14
推荐指数
2
解决办法
2722
查看次数

从代码中设置Delphi 7项目"版本信息"?

是否可以从代码中设置"版本信息"设置?我想在不使用项目选项对话框的情况下设置版本编号和"注释"属性的值.

delphi delphi-7

11
推荐指数
2
解决办法
5385
查看次数

基于代码的唯一约束Django模型

我有一个看起来像这样的Django模型:

class Categories(models.Model):
    """
    Model for storing the categories
    """
    name = models.CharField(max_length=8)
    keywords = models.TextField()
    spamwords = models.TextField()
    translations = models.TextField()

def save(self, force_insert=False, force_update=False):
    """
    Custom save method that converts the name to uppercase
    """
    self.name = self.name.upper()
    super(Categories, self).save(force_insert, force_update)
Run Code Online (Sandbox Code Playgroud)

每当插入或更新数据时。我想检查一下是否存在同名记录。这是我要通过代码而不是数据库来实现的唯一约束。该表中的数据量很小,因此性能命中率不是问题。如果存在约束违例,我想提出Django的内置约束例外之一,而不是创建自定义例外。

有人能以我最好/最快的方式做到这一点吗?

谢谢。

python django django-models

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

Javascript:jquery中的parent

onmouseover="javascript:parent.DivColorHover(this)"
Run Code Online (Sandbox Code Playgroud)

我有一个div动态创建值,我使用此div作为弹出窗口,以便它将用作下拉列表元素.每个值的onMouseOver我在javascript中使用上面的代码行改变背景颜色.我如何在jquery中实现相同的目标

javascript jquery jquery-selectors

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

表达式<TDelegate>.在中型信任环境中编译

当尝试在中型信任Web应用程序中编译Expression时,我得到一个MethodAccessException.有没有人知道在中等信任下编译表达式的另一种方法或解决方法以避免此异常?

抛出异常的代码:

Expression<Func<object>> efn = 
  Expression.Lambda<Func<object>>(Expression.Convert((plan,typeof(object)));

Func<object> fn = efn.Compile(); // Exception thrown here
Run Code Online (Sandbox Code Playgroud)

变量计划是表示以下执行计划的表达式:

{
  Convert(Query(MyProjectNamespace.MyDatabaseTableObject).Provider).Execute
  (
    new QueryCommand(
    "SELECT [t0].[LinkId], [t0].[Url] FROM [dbo].[MyDatabaseTable] AS t0",
    value(System.String[]), 
    r0 => new MyDatabaseTableObject() 
    {
      Id = IIF(r0.IsDBNull(0), 0, 
        Convert(ChangeType(r0.GetValue(0), System.Int32))), 
      Url = IIF(r0.IsDBNull(1), null, 
        Convert(ChangeType(r0.GetValue(1), System.String)))
    }, 
    value(System.Collections.Generic.List[System.String])), 
    new [] {}
  )
}
Run Code Online (Sandbox Code Playgroud)

完整堆栈跟踪:

at System.Reflection.MethodBase.PerformSecurityCheck(Object obj, RuntimeMethodHandle method, IntPtr parent, UInt32 invocationFlags)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net medium-trust

9
推荐指数
1
解决办法
1107
查看次数

使用InvariantCulture或CurrentCulture格式化异常消息?

抛出异常时,我经常传入一个格式化的字符串,该字符串公开有关已发生问题的详细信息.如果可能的话,我总是指定格式化提供程序(这是一种很好的做法,因为否则您可能会忘记确定哪种文化是合适的,并且默认情况下是当前文化,这可能会导致许多错误).

这是一个例子:

throw new InvalidOperationException(
    string.Format(
        CultureInfo.CurrentCulture,
        "{0} is a bad number.",
        number));
Run Code Online (Sandbox Code Playgroud)

我很想使用CurrentCulture,如上所示,因为异常消息是针对人类的(当然,代码永远不会对异常消息本身起作用).消息将使用客户端的文化格式化,因此每当我需要将其显示给我的客户端时,它看起来很不错.

但是,除了向用户显示消息外,还可以将异常记录到日志文件中.我看到很多邮件都放在我的日志文件中,各种文化用于格式化它们.蛮丑的!在这种情况下,InvariantCulture更合适或者可能是托管日志文件的服务器的文化.

这里的要点是,在格式化异常时,您永远不会知道您的受众,因此在格式化时似乎无法确定要使用的文化.如果能够将格式推迟到捕获异常的位置,那将会很棒,但这将远远超出.NET中实现异常的方式.

那你对此有何看法?

.net c# resources exception cultureinfo

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

通过在列表中的两个日期之间迭代来构建月份列表(Python)

我有一个有序(即排序)列表,其中包含按升序排序的日期(作为日期时间对象).

我想编写一个迭代这个列表的函数,并生成每个月的第一个可用日期的另一个列表.

例如,假设我的排序列表包含以下数据:

A = [
'2001/01/01',
'2001/01/03',
'2001/01/05',
'2001/02/04',
'2001/02/05',
'2001/03/01',
'2001/03/02',
'2001/04/10',
'2001/04/11',
'2001/04/15',
'2001/05/07',
'2001/05/12',
'2001/07/01',
'2001/07/10',
'2002/03/01',
'2002/04/01',
]
Run Code Online (Sandbox Code Playgroud)

返回的列表将是

B = [
'2001/01/01',
'2001/02/04',
'2001/03/01',
'2001/04/10',
'2001/05/07',
'2001/07/01',
'2002/03/01',
'2002/04/01',
]
Run Code Online (Sandbox Code Playgroud)

我建议的逻辑是这样的:

def extract_month_first_dates(input_list, start_date, end_date):
    #note: start_date and end_date DEFINITELY exist in the passed in list
    prev_dates, output = [],[]  # <- is this even legal?
    for (curr_date in input_list):
        if ((curr_date < start_date) or (curr_date > end_date)):
            continue

        curr_month = curr_date.date.month
        curr_year = …
Run Code Online (Sandbox Code Playgroud)

python

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

SQL Server,T-SQL运算符可以像变量一样使用吗?或类似的东西

我想做的是这样的事情

DECLARE @operator nvarchar;
SET @operator = 'AND'

SELECT * FROM MyTable
WHERE first_column = "1" @operator second_columnt = "2"
Run Code Online (Sandbox Code Playgroud)

有没有办法实现像那样的逻辑?

t-sql sql-server sql-server-2000 operators

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