我还没有弄清楚如何String在Swift中获取a的子串:
var str = “Hello, playground”
func test(str: String) -> String {
return str.substringWithRange( /* What goes here? */ )
}
test (str)
Run Code Online (Sandbox Code Playgroud)
我无法在Swift中创建一个Range.游乐场中的自动填充功能并不是非常有用 - 这就是它的建议:
return str.substringWithRange(aRange: Range<String.Index>)
Run Code Online (Sandbox Code Playgroud)
我没有在Swift标准参考库中找到任何有帮助的内容.这是另一个疯狂的猜测:
return str.substringWithRange(Range(0, 1))
Run Code Online (Sandbox Code Playgroud)
还有这个:
let r:Range<String.Index> = Range<String.Index>(start: 0, end: 2)
return str.substringWithRange(r)
Run Code Online (Sandbox Code Playgroud)
我已经看到其他答案(查找Swift字符串中的字符索引)似乎表明,因为它String是一种桥接类型NSString,"旧"方法应该有效,但是不清楚如何 - 例如,这也不起作用(似乎不是有效的语法):
let x = str.substringWithRange(NSMakeRange(0, 3))
Run Code Online (Sandbox Code Playgroud)
思考?
我刚刚在Vista SP1计算机上安装了SQL Server 2008 Express.我之前在2005年就已经使用旧的SQL Server Management Studio Express了.我能够连接到我的PC-NAME\SQLEXPRESS实例没有问题(不,PC-NAME不是我的电脑名称;-).
我卸载了2005和SQL Server Management Studio Express.然后,我在我的计算机上安装了SQL Server 2008 Express,并选择安装SQL Server Management Studio Basic.
现在,当我尝试连接到PC-NAME\SQLEXPRESS(使用Windows身份验证时,就像我一直这样),我收到以下消息:
无法连接到PC-NAME\SQLEXPRESS.建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)(Microsoft SQL Server,错误:-1)如需帮助,请单击:http://go.microsoft.com/fwlink?ProdName = Microsoft + SQL +服务器&EvtSrc =&的MSSQLServer EvtID = -1&LINKID = 20476
当我安装SQL Server 2008时,我让它使用SQLEXPRESS作为本地实例名称.据我所知,通过SQL Server配置管理器,SQL Server配置为允许远程连接.
当我访问它提到的帮助链接时,帮助页面提示以下内容:
好吧,据我所知,我的系统上没有SQL Server Browser服务(在MMC中查找一个,找不到一个).
并且SQL Server 2008中不存在SQL Server表面区域配置工具.在您的帮助文档中可以很好地使用Microsoft ;-).
我现在不知道该做什么.在升级到2008之后,我有很多工作,我希望能够完成这项工作(我正在与之合作的人在没有问题的情况下完成并运行它并告诉我这很容易 - 他对数据库的东西也更好了我上午).有谁知道什么可能是错的?我真的很感激.如果我不能在几个小时内完成这项工作,我将回到SQL Server 2005(如果这甚至可以工作,那么......).
编辑:我已经尝试关闭Windows防火墙,这没有帮助.另外,我注意到我的SQL Server 2008安装目录树下没有"数据"目录 - 安装时我可能设置了错误吗?
我认为这些信息更容易找到:-)
UITableViewCell的默认高度是多少?它看起来像44像素,但我更愿意确定.
免责声明:我是REST学校的新手,我正试图围绕它思考.
所以,我正在阅读这个页面,常见的REST错误,而且我发现我对会话无关紧要的部分感到困惑.这就是页面所说的内容:
客户端不需要"登录"或"启动连接".HTTP验证在每条消息上自动完成.客户端应用程序是资源的消费者,而非服务.因此没有什么可登录的!假设您在REST网络服务上预订航班.您不创建与服务的新"会话"连接.而是要求"行程创建者对象"为您创建一个新的行程.您可以开始填充空白,然后在网络上的其他地方获得一些完全不同的组件以填充其他一些空白.没有会话,因此在客户端之间迁移会话状态没有问题.也没有"会话亲和力"的问题
好的,我得到HTTP身份验证是在每条消息上自动完成的 - 但是如何?是否每次请求都会发送用户名/密码?那不就是增加攻击面积吗?我觉得我错过了这个难题的一部分.
例如,拥有一个/session接受GET请求的REST服务是不是很糟糕,在请求中传入用户名/密码,如果验证成功则返回会话令牌,然后可以随后的请求传递?从REST的角度来看,这是否有意义,还是忽略了这一点?
我想声明一个"空"的lambda表达式,它确实没有.有没有办法在不需要方法的情况下做这样的事情DoNothing()?
public MyViewModel()
{
SomeMenuCommand = new RelayCommand(
x => DoNothing(),
x => CanSomeMenuCommandExecute());
}
private void DoNothing()
{
}
private bool CanSomeMenuCommandExecute()
{
// this depends on my mood
}
Run Code Online (Sandbox Code Playgroud)
我这样做的意图只是控制我的WPF命令的启用/禁用状态,但这是暂且不说的.也许这对我来说太早了,但我想必须有办法以x => DoNothing()某种方式声明lambda表达式来完成同样的事情:
SomeMenuCommand = new RelayCommand(
x => (),
x => CanSomeMenuCommandExecute());
Run Code Online (Sandbox Code Playgroud)
有办法做到这一点吗?似乎没有必要采用无操作方法.
我从一个非常简单的WPF测试应用程序使用Console.WriteLine(),但是当我从命令行执行应用程序时,我看不到任何内容被写入控制台.有谁知道这里会发生什么?
我可以通过在VS 2008中创建WPF应用程序来重现它,并简单地在执行任何地方添加Console.WriteLine("text").有任何想法吗?
我现在需要的只是Console.WriteLine()这么简单.我意识到我可以使用log4net或其他日志记录解决方案,但我真的不需要这个应用程序的那么多功能.
编辑:我应该记得Console.WriteLine()是用于控制台应用程序.哦,好吧,没有愚蠢的问题,对吗?:-)我现在只使用System.Diagnostics.Trace.WriteLine()和DebugView.
我对TensorFlow的世界相对较新,并且非常困惑于你如何将CSV数据实际读入TensorFlow中的可用示例/标签张量.TensorFlow教程中有关读取CSV数据的示例相当分散,只能让您了解能够训练CSV数据的方法.
这是我根据CSV教程编写的代码:
from __future__ import print_function
import tensorflow as tf
def file_len(fname):
with open(fname) as f:
for i, l in enumerate(f):
pass
return i + 1
filename = "csv_test_data.csv"
# setup text reader
file_length = file_len(filename)
filename_queue = tf.train.string_input_producer([filename])
reader = tf.TextLineReader(skip_header_lines=1)
_, csv_row = reader.read(filename_queue)
# setup CSV decoding
record_defaults = [[0],[0],[0],[0],[0]]
col1,col2,col3,col4,col5 = tf.decode_csv(csv_row, record_defaults=record_defaults)
# turn features back into a tensor
features = tf.stack([col1,col2,col3,col4])
print("loading, " + str(file_length) + " line(s)\n")
with tf.Session() …Run Code Online (Sandbox Code Playgroud) 我有点惊讶的是,无法通过XAML为Canvas.Children设置绑定.我不得不采用代码隐藏方法,看起来像这样:
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
DesignerViewModel dvm = this.DataContext as DesignerViewModel;
dvm.Document.Items.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(Items_CollectionChanged);
foreach (UIElement element in dvm.Document.Items)
designerCanvas.Children.Add(element);
}
private void Items_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
{
ObservableCollection<UIElement> collection = sender as ObservableCollection<UIElement>;
foreach (UIElement element in collection)
if (!designerCanvas.Children.Contains(element))
designerCanvas.Children.Add(element);
List<UIElement> removeList = new List<UIElement>();
foreach (UIElement element in designerCanvas.Children)
if (!collection.Contains(element))
removeList.Add(element);
foreach (UIElement element in removeList)
designerCanvas.Children.Remove(element);
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢在XAML中设置一个绑定,如下所示:
<Canvas x:Name="designerCanvas"
Children="{Binding Document.Items}"
Width="{Binding Document.Width}"
Height="{Binding Document.Height}">
</Canvas>
Run Code Online (Sandbox Code Playgroud)
有没有办法在不采用代码隐藏方法的情况下实现这一目标?我已经完成了一些关于这个主题的谷歌搜索,但是对于这个具体问题还没有提出太多.
我不喜欢我当前的方法,因为它通过使View知道它的ViewModel来破坏我的漂亮的Model-View-ViewModel.
我正在使用Emacs 24; 我已经安装了zenburn主题,这很棒,除了我无法通过zenburn提供的高亮颜色轻松看到选择突出显示:

通过"选择"颜色,我的意思是通过设置标记(C-space并移动光标以选择文本)选择的文本颜色.
对于我的生活,我无法弄清楚如何改变它.我试图改变的每个组合highlight,selection等等.我能想到的zenburn-theme.el,但似乎没有任何改变.
**出于理智的考虑,我尝试更改主题中的其他颜色,以确保Emacs正确加载文件 - 这是 - 这些更改有效.*
我会特别想到改变highlight会起作用,但是没有对该highlight行的自定义似乎有效:
;;;; Built-in
;;;;; basic coloring
...
`(highlight ((t (:background ,zenburn-bg-05 :foreground ,zenburn-yellow))))
Run Code Online (Sandbox Code Playgroud)
如何更改选择颜色?
我正在考虑从VeriSign或Thawte购买代码签名证书以签署XBAP.我的问题是:证书到期后会发生什么?299美元和599美元的1年/ 2年证书价格非常高,如果我必须在证书到期时向我的客户提供新签名的版本,那么我只会处理创建自己的证书的麻烦.现在.
我不喜欢创建自己的证书是难以将其分发给将使用我的XBAP的所有客户端计算机.我的应用程序只会在局域网上使用,所以我想我总是可以使用Windows Installer来安装我自己的家庭酿造证书(虽然我不确定如何做到这一点 - 任何人都有任何想法?).
如果我提供部分信任应用程序,这不会是一个问题 - 但我的应用程序需要Web权限,因为它将与WCF服务进行通信,因此它处于部分信任和完全信任之间的灰色区域,并且没有证书,当我尝试加载我的XBAP时,我得到了那个有趣的"不信任"信息.
有任何想法吗?
c# ×3
wpf ×2
.net ×1
.net-3.5 ×1
canvas ×1
certificate ×1
code-signing ×1
console ×1
csv ×1
data-binding ×1
emacs ×1
ios ×1
iphone ×1
lambda ×1
python ×1
rest ×1
session ×1
ssms ×1
swift ×1
tensorflow ×1
uitableview ×1
xbap ×1