Не удается опубликовать веб-сайт. Когда я пытаюсь опубликовать его на действующем FTP или в локальной папке, я получаю следующую ошибку: System.UriFormatException: недопустимый URI: URI пуст. в System.Uri.CreateThis (String uri, Boolean dontEscape, UriKind uriKind) в System.Uri..ctor (String uriString) в Microsoft.Web.Publishing.Tasks.TransformXml.Execute () в Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () в Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask (ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean & 0127121 & * [do you deal with this task, Boolean & 01270] --- 829679-
Во-первых, немного предыстории: я пытаюсь реализовать интерфейс master-detail в Какао (для OS X). То есть у меня есть окно с двумя NSTableView
, которые отображают два разных типа объектов. Для этого вопроса позвольте ' s говорят, что это склады и пакеты (чтобы выбрать пример, который аналогичен моей реальной проблеме). Выбор строки в первом представлении таблицы (на складе) отобразит список пакетов, которые принадлежат этому складу, во втором представлении таблицы. . Что касается модели, у меня в настоящее время есть NSMutableArray
, называемый складами складских объектов, и каждый складской объект имеет NSArray
объектов пакетов. Следует отметить, что переменная хранилищ изменяется после загрузки файлов NIB, поэтому необходимо уведомить NSArrayController
.
Теперь я попытался организовать ее так, чтобы «мастер» находится в собственном объекте представления, а «деталь» - в собственном объекте представления. Это означает, что существует три NIB: NIB WarehousesView, NIB WarehouseDetailView и NIB MainWindow.
NSViewController
) и само представление. NSSplitView
, и представления разделенного представления связаны с соответствующими экземплярами представления в файле NIB. Это подводит меня к первой половине моего вопроса:
1 ) Является ли это хорошим способом разделения представлений приложения для приложения Какао? Для меня это имеет смысл, потому что позже в WarehouseDetailView могут быть добавлены дополнительные сведения о хранилище, помимо списка его пакетов.
Это важный вопрос, потому что все работает нормально, если я пропускаю создание представлений, помещая все элементы управления непосредственно в окно и поместите все остальное, включая экземпляры NSArrayController
, соответствующие Warehouses и Packages, в тот же файл NIB. Мне не нужно задавать вторую половину вопроса, если я не должен делать это таким образом.
Вторая половина вопроса в основном такова:
2) Где мне разместить Контроллер NSArrayController
, соответствующий Складам и Пакетам, если я разделю его, как описано выше, так, чтобы интерфейс главный-подробный все еще работал? В настоящее время я использую привязки какао, поэтому каким-то образом массив содержимого Warehouse NSArrayController
должен быть привязан к моему массиву складов, а массив содержимого Packages NSArrayController
должен привязаться к выбранному Warehouse NSArrayController
Я пробовал несколько вещей, но ничего не смог заставить работать полностью. В частности, я попытался поместить NSArrayController
для складов в NIB WarehousesView и NSArrayController
для пакетов в NIB WarehouseDetailView. Проблема с этим подходом заключается в том, что я не могу найти способ привязать пакет NSArrayController
к выбранному хранилищу NSArrayController
. Другое дело, что я Мы пробовали (1) поместить оба NSArrayController
в NIB MainWindow, (2) подключить эти NSArrayController
к IBOutlets в MainWindowController, а затем (3) передать эти переменные в соответствующие контроллеры представления через их конструкторы, (4) раскрытие их как свойств в контроллерах представления через KVC и (5) привязка необходимых столбцов таблицы в представлении к контроллеру массива через владельца файла. В результате ничего не появилось, но и ошибок не было. Если один из этих подходов является предпочтительным, я могу предоставить более подробную информацию, чтобы понять, делаю ли я это неправильно.
Заранее спасибо!
Изменить: Я просмотрел этот связанный вопрос , objc-class-ref-to-AddViewController в ContactsController.o
ld: symbol (s) not found
collect2: ld возвратил 1 статус выхода
, и конкретные контроллеры подключены и компилируются нормально.
Спасибо