小编kri*_*nan的帖子

在BindingList <T>中查找

如何在BindingList中查找具有属性等于特定值的对象.以下是我的代码.

public class Product
{
    public int ProductID { get; set; } 
    public string ProductName { get; set; }  
}

BindingList<Product> productList = new BindingList<Product>();
Run Code Online (Sandbox Code Playgroud)

现在考虑productList有100个产品,我想找到id为10的产品对象.

我可以找到它

productList.ToList<Product>().Find(p =>p.ProductID == 1);
Run Code Online (Sandbox Code Playgroud)

但我觉得使用ToList()是一个不必要的听到这里.有没有直接的方法来做到这一点,没有"查找"方法BindingList<T>

.net bindinglist winforms

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

核心数据多级父级 - 子级上下文

在我的应用程序中,我有UITableViewController显示事件列表.此控制器使用ManagedObjectContext Say ParentContext.现在,如果选择了任何事件,则会显示详细的视图控制器,用户可以在其中编辑事件的详细信息.所以我创建了一个子上下文说,

ChildContext with type "NSPrivateQueueConcurrencyType"

ChildContext whose parent Context is "ParentContext".

我的代码是:

  NSManagedObjectContext *childContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
  childContext.parentContext = self.context ;
Run Code Online (Sandbox Code Playgroud)

现在又有一些领域和关系需要另一个向下钻取.所以我为新的视图控制器创建了另一个ChildContext,

GrandChildContext with type "NSPrivateQueueConcurrencyType"

GrandChildContext whose parent context is "ChildContext"

这个过程是另一个级别(从父级(tableView)到子级的总共4级)

self.context - Parent Context
  |
  |
ChildContext
  |
  |
GrandChildContext
  |
  |
GrandGrandChildContext
Run Code Online (Sandbox Code Playgroud)

我的实体看起来像这样

EntityA           -- ( Edit View Controller  - uses ChildContext )
 |
 |- Field1
 |
 |- Field2
 |
 |- RelationShip (1 to Many ) - ( Relationship Add …
Run Code Online (Sandbox Code Playgroud)

core-data objective-c nsmanagedobjectcontext ios

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

使用金属顶点和片段着色器将MTLTexture传递给SCNProgram

我有一个图像阵列,我必须根据顶点随机选择一个图像,用金属我可以实现这个MTLTexture2DArray.

但我使用SceneKit和自定义SCNProgram,它的问题是我无法将MTLTexture传递给Metal片段函数.

如果我将图像设置为SCNMaterial它可以工作,如果我设置金属纹理它会抛出异常.

let material = SCNMaterial()
material.program = program
material.setValue(metalTexture, forKey: "customTexture")
Run Code Online (Sandbox Code Playgroud)

问题与此问题完全相同.将 Metal texture2d_array传递给SceneKit着色器修改器

但它使用着色器修改器,在这里我使用自定义着色器.

是否可以将metal的texture2d数组传递给自定义SCNProgram,还是有另一种方法将图像数组传递给SCNProgram中的着色器函数?

ios scenekit swift metal

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

如何将突变中的 GraphQLEnumType 作为字符串值传递

我有以下 GraphQLEnumType

const PackagingUnitType = new GraphQLEnumType({
  name: 'PackagingUnit',
  description: '',
  values: {
    Carton: { value: 'Carton' },
    Stack: { value: 'Stack' },
  },
});
Run Code Online (Sandbox Code Playgroud)

在突变查询中,如果我将 PackagingUnit 值作为 Carton(不带引号)传递,它会起作用。但是如果我作为字符串 'Carton' 传递,它会抛出以下错误

In field "packagingUnit": Expected type "PackagingUnit", found "Carton"
Run Code Online (Sandbox Code Playgroud)

有没有办法从客户端将枚举作为字符串传递?

编辑:我的前端有一个表单,我从用户那里收集 PackagingUnit 类型以及其他字段。PackagingUnit 类型在前端表示为字符串(不是 graphQL Enum 类型),由于我没有使用 Apollo Client 或 Relay,所以我必须自己构建 graphQL 查询字符串。现在我正在收集表单数据作为 JSON,然后执行 JSON.stringify(),然后删除属性上的双引号以获得最终的 graphQL 兼容查询。

例如。我的表单有两个字段 PackagingUnitType (An GraphQLEnumType) 和 noOfUnits (An GraphQLFloat) 我的 json 结构是

{ 
  packagingUnitType: "Carton",
  noOfUnits: 10
}
Run Code Online (Sandbox Code Playgroud)

使用 JSON.stringify() 将其转换为字符串

'{"packagingUnitType":"Carton","noOfUnits":10}'
Run Code Online (Sandbox Code Playgroud)

然后删除属性上的双引号

{packagingUnitType:"Carton",noOfUnits:10} …
Run Code Online (Sandbox Code Playgroud)

graphql graphql-js

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

为什么安装Google SignIn SDK会安装Firebase - Cocoa pod

我想在我的IOS应用程序中实现Google SignIn.我正在使用cocoapods添加sdk

pod 'Google/SignIn'
Run Code Online (Sandbox Code Playgroud)

但是pod install- 安装firebase

Using FirebaseAnalytics (3.6.0)
Using FirebaseCore (3.4.5)
Using FirebaseInstanceID (1.0.8)
Using GTMOAuth2 (1.1.4)
Using GTMSessionFetcher (1.1.7)
Using Google (3.0.3)
Using GoogleAppUtilities (1.1.2)
Using GoogleInterchangeUtilities (1.2.2)
Using GoogleSignIn (4.0.1)
Using GoogleSymbolUtilities (1.1.2)
Using GoogleToolboxForMac (2.1.0)
Run Code Online (Sandbox Code Playgroud)

如何删除Firebase.我不需要任何分析.只是Google SignIn.

谢谢

ios cocoapods google-signin

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

核心数据NSPredicate"已删除==否"无法按预期工作

我正在使用UIManagedDocument与父子上下文.

在我的孩子背景下,我做了以下几点

代码1

NSSet *results = [self.event.memberships filteredSetUsingPredicate:[NSPredicate predicateWithBlock:^BOOL(id evaluatedObject, NSDictionary *bindings) {

    return ([[evaluatedObject deleted] boolValue] == NO);

}]];
Run Code Online (Sandbox Code Playgroud)

上面的代码返回预期的结果(仅事件的未删除成员).

代码2

但是这段代码没有.它获取所有记录.

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"deleted == NO"];
NSSet *results = [self.event.memberships filteredSetUsingPredicate:predicate];
Run Code Online (Sandbox Code Playgroud)

这似乎令人困惑.两者都应该返回相同的结果,但predicateWithBlock返回正确的结果,其中predicateWithFormat返回所有记录.

使用predicateWithBlock代替的优缺点是predicateWithFormat什么?

core-data objective-c nspredicate uimanageddocument

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