Как использовать Файл WSDL для создания Прокси WCF?

Swift 5 или более поздняя версия

Вы можете разделить String, используя новое свойство Character isNewline :

let sentence = "Line 1\nLine 2\nLine 3\n"
var lines = sentence.split { [110].isNewline }
print(lines)   // "[Line 1, Line 2, Line 3]"

Оригинальный ответ

Вы можете использовать метод String enumerateLines :

Перечисляет все строки в строке.

Swift 3 или новее

let sentence = "Line 1\nLine 2\nLine 3\n"
var lines: [String] = []
sentence.enumerateLines { line, _ in
    lines.append(line)
}
print(lines)   // "[Line 1, Line 2, Line 3]"
extension String {
    var lines: [String] {
        var result: [String] = []
        enumerateLines { line, _ in result.append(line) }
        return result
    }
}

Использование:

let sentence2 = "Line 4\nLine 5\nLine 6\n"
let sentence2Lines = sentence2.lines

print(sentence2Lines)    // ["Line 4", "Line 5", "Line 6"]


let sentence3 = "Line 7\r\nLine 8\r\nLine 9\r\n"
let sentence3Lines = sentence3.lines

print(sentence3Lines)  // "[Line 7, Line 8, Line 9]"

23
задан John Saunders 30 November 2011 в 00:15
поделиться

3 ответа

Используйте svcutil.exe, чтобы создать прокси WCF для вызова службы. Подробности здесь .

21
ответ дан 29 November 2019 в 01:20
поделиться

Щелкните проект правой кнопкой мыши и выберите «Добавить ссылку на службу». Укажите на WSDL. Щелкните "ОК". На этом должно быть все.

enter image description here

27
ответ дан 29 November 2019 в 01:20
поделиться

wsdl.exe - это старый способ веб-службы (1.1) для создания прокси. Первое, что нужно попробовать, это «Добавить ссылку на службу», как уже упоминалось. Это использует svcutil.exe для создания прокси. Если вам нужен больший контроль над созданием прокси, вы можете использовать svcutil.exe из командной строки с различными переключателями.

С учетом сказанного ... У меня были проблемы со старыми wsdls веб-служб. В частности, старый веб-сервис Apache AXIS, содержащий перегруженные операции. Пожалуйста, прочтите мой пост здесь для получения полной информации. (Моя проблема все еще не решена. Надеюсь, вы не столкнетесь с теми же проблемами, но если вы это сделаете и разберетесь, ответьте на мой вопрос. :)

8
ответ дан 29 November 2019 в 01:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: