我有一个为8.1构建的Windows Phone应用程序,其中一个任务是客户端 - 服务器证书方案.我的应用程序工作正常,我可以发送客户端证书并登录到服务器.但升级到Windows 8.10.14xxxx之后无法实现.我接受了wireshark的痕迹,似乎证书永远不会发送.消息的内容长度为0.
我使用HttpClient.SendAsync(等待)并HttpBaseProtocolFilter输入证书.它在升级之前完美无缺.
任何的想法?有什么东西坏了?
首先我要安装pfx
async private void btnInstall_Click(object sender, RoutedEventArgs e)
{
//Install the self signed client cert to the user certificate store
string CACertificate = null;
try
{
Uri uri = new Uri("ms-appx:///certificates/test.pfx");
var file = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(uri);
IBuffer buffer = await FileIO.ReadBufferAsync(file);
using (DataReader dataReader = DataReader.FromBuffer(buffer))
{
byte[] bytes = new byte[buffer.Length];
dataReader.ReadBytes(bytes);
// convert to Base64 for using with ImportPfx
CACertificate = System.Convert.ToBase64String(bytes);
}
await CertificateEnrollmentManager.UserCertificateEnrollmentManager.ImportPfxDataAsync(
CACertificate,
"xxxxx", …Run Code Online (Sandbox Code Playgroud) certificate windows-phone windows-phone-8.1 windows-10 windows-10-mobile
我正在尝试实现Dijkstra算法的一个版本,以找到总线从开始到结束的最短路径.不幸的是,我似乎无法找到一个库或swift提供一种优先级队列的其他方式,因此我似乎必须编写自己的代码.
话虽这么说,有人能指出我正确的方向吗?
目前我的想法如下:
写一个将保存优先级数组的类.在这个类中,将有一个接收值的方法,将其添加到优先级数组,然后根据优先级(在这种情况下,距离)对其进行排序.还将有一个get函数,它返回数组中最高优先级的项.
我想知道在理解优先级队列时我是否接近或离开了.
谢谢.
编辑:
到目前为止这是我的代码.似乎太短暂和残酷......我必须在概念方面遗漏一些东西.
var priorityQueue = Dictionary<String, Int>()
var firstElement: String = ""
func push(name: String, distance: Int)
{
priorityQueue[name] = distance
var myArr = Array(priorityQueue.keys)
var sortedKeys = sort(myArr) {
var obj1 = self.priorityQueue[$0] // get obj associated w/ key 1
var obj2 = self.priorityQueue[$1] // get obj associated w/ key 2
return obj1 > obj2
}
firstElement = myArr[0]
var tempPriorityQueue = Dictionary<String, Int>()
for val in myArr
{
tempPriorityQueue[val] = priorityQueue[val]
} …Run Code Online (Sandbox Code Playgroud) 当我想在xCode 6中连接我的开发者帐户时,收到此消息:"与成员中心通信时发生错误."
有人知道是什么问题?有人可以帮帮我吗?谢谢 !
我认为有以下代码:
<div class="item_editor_line">
<label>Artist(s): </label>
<select multiple
name="artists[]"
v-model="artist_ids"
id="artists">
<option v-repeat="artists"
value="@{{ id }}">
@{{ name }}
</option>
</select>
</div>
Run Code Online (Sandbox Code Playgroud)
并且我artist_ids使用在 中调用的方法填充变量ready()。
但是,当我查看结果页面时,我在艺术家下拉列表中没有看到任何选择。artist_ids可以确认已正确填充,并且当我在控制台中向其推送另一个 id 时,Vue 确实会选择它并选择它应该的所有艺术家。
我究竟做错了什么?如何v-model="artist_ids"在页面加载之前从下拉列表中适当地进行选择?
我在TableView中使用了一些CoreData基础。
当我尝试清除其他视图中的那些基础时,我的控制台日志中有一条消息。
CoreData:错误:严重的应用程序错误。在调用-controllerDidChangeContent:期间,从NSFetchedResultsController的委托捕获了一个异常。
无效的更新:部分0中的行数无效。更新(0)之后,现有部分中包含的行数必须等于更新(3)之前该部分中包含的行数,再加上或减去该数字从该部分插入或删除的行数(已插入0,已删除0),加上或减去移入或移出该部分的行数(移入0,移出0)。与userInfo(空)
用于删除CoreData数组我使用此代码
self.historyArray.removeAll()
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let fetchRequest = NSFetchRequest(entityName: "History")
fetchRequest.returnsObjectsAsFaults = false
do {
let results = try managedContext.executeFetchRequest(fetchRequest)
for managedObject in results
{
let managedObjectData:NSManagedObject = managedObject as! NSManagedObject
managedContext.deleteObject(managedObjectData)
}
} catch {
print("Detele all data")
}
Run Code Online (Sandbox Code Playgroud)
我知道我需要重新加载TableView,但是如何在其他View中执行此操作?虐待尝试过此,但此代码不起作用。
var tableViewHistoryClass = HistoryView()
self.tableViewHistoryClass.tableView.reloadData()
Run Code Online (Sandbox Code Playgroud)
请帮助我修复此消息。
swift ×2
algorithm ×1
certificate ×1
core-data ×1
javascript ×1
reloaddata ×1
tableview ×1
vue.js ×1
windows-10 ×1
xcode ×1
xcode6 ×1