小编gbd*_*vid的帖子

如何在Swift 3中使用新的优先级组声明exponent/power运算符?

对于Xcode 8 beta 6,Swift 3已经发生了变化,现在我无法像以前那样申报操作员的电源:

infix operator ^^ { }
public func ^^ (radix: Double, power: Double) -> Double {
    return pow((radix), (power))
}
Run Code Online (Sandbox Code Playgroud)

我已经读过一些关于它的内容,并且在Xcode 8 beta 6中引入了一个新的变化

从这里我猜我必须声明一个优先级组并将其用于我的运算符,如下所示:

precedencegroup ExponentiativePrecedence {}

infix operator ^^: ExponentiativePrecedence
public func ^^ (radix: Double, power: Double) -> Double {
    return pow((radix), (power))
}
Run Code Online (Sandbox Code Playgroud)

我是否朝着正确的方向努力使这项工作成功?我应该把什么放在优先组的{}里面?

我的最终目标是能够使用简单的操作员快速进行动力操作,例如:

10 ^^ -12
10 ^^ -24
Run Code Online (Sandbox Code Playgroud)

operator-precedence swift swift3 xcode8-beta6

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

Xcode 7中的NSToolbar使用Storyboards(NSWindowController - > NSSplitViewController)

嗨我已经看过这个问题已经问了几次但是没有明确的答案,所以我为xcode 7和swift2创建了它(这可能会改变一些事情).

我使用Xcode 7和Cocoa OSX Story board + swift2创建了一个项目,所以我的项目开始于一个连接到NSViewController 的NSWindowController(正如预期的那样!).我在我的窗口控制器中添加了一个NSToolbar,并在工具栏中添加了一个NSButton.我将我的NSViewController更改为新的NSSplitViewController之一,它链接到三个NSViewController并水平显示它们的视图 - 使用垂直分隔 - (类似于您在照片应用程序中看到的布局或Yosemite +中的页面).我的最终目标是"我的工具栏"中的按钮显示并隐藏第一个拆分.

这是我的理解,并且我希望实现这一点我应该在NSSplitViewController中创建一个动作,它或多或少地改变了它们在这里工作的方式约束:如何在mac中折叠和展开视图应用?.

然后以某种方式将此操作链接到工具栏中的NSButton ...它恰好位于NSWindowController中(远远超出层次结构中)...

我已经解决了有关NSToolbar和故事板的其他问题,但未能实现我的目标:

  • YouTube视频:Cocoa Programming L17 - NSToolbar是我发现的最接近解决问题的方法,但他的方法不适用于故事板,只创建自己的xib文件.
  • 在这个问题:如何在Xcode 6和Storyboard中使用NSToolBar?一个人建议使用第一个响应器建立链接,并期望在运行时连接所有东西(看起来有点狡猾,而不是苹果实现它的方式,我认为......).第二个人建议在NSWindowController中创建一个视图控制器变量,并从那里操纵它的属性......但同样,有点狡猾.

  • 我在这个问题中看到的最新评论似乎是解决问题的最佳方法(但仍然不如我想的那么好)是将NSObjectController添加到每个场景的停靠点,当场景加载时,设置值对象的另一个secene的控制器.这真的是最好的方式吗?如果是这样,我怎么能实现这个呢?

Apple确实(再次)在WWDC15中提到他们为osx和拥有视图控制器的拆分视图控制器创建了故事板,以便您可以将逻辑和工作移动到特定的视图控制器,因此我期望从在我的拆分视图控制器内部,因为这是需要更改的目标.

有谁知道如何从视图控制器本身实现这一点?我真的无法找到一种方法将ToolBarItem连接到它.

macos nstoolbar swift nssplitviewcontroller xcode7

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

实体框架查询到SQL Server 2017图形数据库的语法

假设我正在使用此示例中的图形数据库(SQL Server 2017):

https://docs.microsoft.com/zh-cn/sql/relational-databases/graphs/sql-graph-sample

我有以下SQL查询:

-- Find Restaurants that John likes
SELECT Restaurant.name
FROM Person, likes, Restaurant
WHERE MATCH (Person-(likes)->Restaurant)
AND Person.name = 'John';
Run Code Online (Sandbox Code Playgroud)

我使用EF 6.1.3在C#中创建了一个模型,它会自动生成数据库中的所有类和所有内容(数据库中的EF Designer)。这一切都很好。我什至可以使用以下简单方法查询所有人:

public ICollection<People> ListPeople() => Entities.Peoples.ToList();
Run Code Online (Sandbox Code Playgroud)

现在,如果我们回到原始查询,我想在哪里找到John喜欢的餐厅...我将如何在Entity Framework中做到这一点?我需要使用LINQ查询还是可以仅调用实体?(大概我不能,因为表之间似乎没有任何物理关系,只能在边缘找到它们)

我在想类似的东西

 public ICollection<Restaurant> ListRestaurantsLikedByPerson(string personName)
        {
            var result = from restaurant in Entities.Restaurants, person in Entities.Peoples, likes in Entities.likess
                where match (person - likes -> restaurant)
                and person.name = personName;

            return result;
        }
Run Code Online (Sandbox Code Playgroud)

但是此语法不正确...我该如何查询?

c# entity-framework graph-databases sql-server-2017

6
推荐指数
2
解决办法
2337
查看次数

邮件视图Outlook 2013 Microsoft Office Interop上的奇数<end>标记

我正在使用Microsoft.Office.Interop.Outlook,VB.net和Office 2013生成MailItem,然后将项目发送到Outlook,显示电子邮件窗口并让用户编辑它/从Outlook 2013发送它.我正在做的事情是:

我创建了Microsoft.Office.Interop.Outlook.MailItem对象并用相关信息填充它,我生成一个像这样的正文的HTML常量

Private Const mstrHTML_FORMAT As String = "<html><p style='font-size:10pt;font-family:Arial;'>{0}</p></html>"
Run Code Online (Sandbox Code Playgroud)

然后我将我想要的文本添加到字符串变量strBody并使用String.Format将文本插入到我的对象的HTMLBody中:

objMailItem.HTMLBody = String.Format(mstrHTML_FORMAT, strBody)
Run Code Online (Sandbox Code Playgroud)

我还将正文的格式更改为HTML:

 objMailItem.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML
Run Code Online (Sandbox Code Playgroud)

经过几个其他步骤后,我将其发送到视图

objMailItem.Display(True)
Run Code Online (Sandbox Code Playgroud)

我的问题是,当用户发送电子邮件时,接收者将看到该电子邮件的主题为文本的消息

为什么会发生这种情况的任何线索?

在此输入图像描述

vb.net email outlook

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

NSXPCInterface 构造函数无法识别 Swift 中的协议

我正在快速创建 XPC 服务,并且创建了我的协议:

protocol MyProtocol {

func myFunc()

}
Run Code Online (Sandbox Code Playgroud)

当我尝试通过使用协议初始化 NSXPCInterface 的新对象来设置导出对象实现的接口(在我的 main.swift 中)时,出现错误:

/// This method is where the NSXPCListener configures, accepts, and resumes a new incoming NSXPCConnection.
func listener(listener: NSXPCListener, shouldAcceptNewConnection newConnection: NSXPCConnection) -> Bool {
    // Configure the connection.
    // First, set the interface that the exported object implements.
    newConnection.exportedInterface = NSXPCInterface(MyProtocol)
Run Code Online (Sandbox Code Playgroud)

错误是:无法将类型“(MyProtocol).Protocol”(又名“MyProtocol.Protocol”)的值转换为预期参数类型“Protocol”

谁能帮助我解决这个错误?

xcode xpc protocols nsxpcconnection swift2

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