Используйте это:
double start = 400;
double end = 402;
double random = new Random().nextDouble();
double result = start + (random * (end - start));
System.out.println(result);
EDIT:
new Random().nextDouble()
: случайным образом генерирует число от 0 до 1.
start
: начать номер, сдвинуть число «вправо»
end - start
: интервал. Random дает вам от 0% до 100% от этого числа, потому что случайный дает вам число от 0 до 1.
EDIT 2: Tks @ daniel и @aaa bbb. Мой первый ответ был неправильным.
Ключевое решение состоит в том, заставить ли сервис WCF соответствовать сокетному клиенту или заставить ли сокетный клиент соответствовать сервису WCF.
будет самым простым попытаться соответствовать сервису WCF, вместо того, чтобы пытаться реализовать что-то пользовательское в WCF, который никогда не легок. У основания раздела Other Resources ниже Вас будет видеть ссылку, которая описывает контроль сообщения, который необходим, чтобы попытаться соответствовать сервису WCF.
Однако сокеты.NET исходно не общаются с WCF.
Любая попытка сделать так потребует пользовательского программирования на стороне WCF вещей.
, Используете ли Вы TcpClient или неструктурированные сокеты в.NET, чтобы соединиться с и общаться с WCF, не имеет значения. Любая такая совместимость должна быть обработана с пользовательской логикой в WCF. Отметьте ту Сеть. Tcp является пользовательским транспортным протоколом. Это технически не использует TCP таким же образом, который TcpClient.
, Например, UDP является очень наиболее часто используемым серверами сокета в мире Linux. WCF не обеспечивает встроенный транспорт UDP. Однако существует образец UDP для WCF, который реализует UDP для WCF. К сожалению, тот образец не иллюстрирует передачу к и от non-WCF UPD сервер сокета.
у меня есть нерешенный вопрос, который скорее детализирован, где я объясняю свое усилие заставить пример кода в общем быть тестируемым для использования UDP...
это возможный заставить WcfTestClient работать на пользовательские транспортные каналы?
Никто еще не ответил на мой вопрос. Так, если Вы преуспеваете в том, чтобы делать эту работу, мне очень интересно. Мой случай управлялся требованием Сервиса WCF, чтобы смочь обратиться к серверу сокета UDP, работающему на Linux, не имея необходимость создавать помехи моему сервису кодированием non-WCF. Я не хочу смешивать подходы.
Другие Ресурсы...
Выбор статьи Transport
This указывает, что "Транспорт TCP WCF оптимизирован для сценария, где оба конца коммуникации используют WCF".
Попытка подключить non-WCF клиент к сервису WCF, который использует BasicHttpBinding.
разработчик заканчивает тем, что писал пользовательский код через WebClient (в противоположность TcpClient).
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/c2d72c2d-c095-4ae1-b8ae-d15f32a4e0be/
WCF по сравнению с Сырыми данными Сокеты.NET
ответ указывает, что TCP + двоичная сериализация или UDP + двоичная сериализация мог бы быть необходим. Существует UDP обязательный образец, как я упомянул выше.
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/c0520111-c1ca-4ffd-a4e0-ac68e86130ee/
Пишущие Пользовательские Запросы к Simple WCF Services
автор объясняет, как выяснить формат сообщения, которое должно быть отправлено службе, так, чтобы TcpClient или другой клиент сокетов non-WCF могли отправить информацию о записи службе WCF. Импликация здесь - то, что Вы не пытаетесь приспособить сервису WCF, а скорее Вы вынуждаете сокетный клиент сделать тяжелый подъем. Несмотря на это, Вы не получаете встроенные преимущества привязки WCF, если Вы ожидаете это.
http://blogs.msdn.com/carlosfigueira/archive/2008/01/13/writing-custom-requests-to-simple-wcf-services.aspx
Hy,
Вы включали Трассировку WCF? Поскольку, если Вы делаете и Вы получаете следующее сообщение: "Сервис не позволяет Вам входить в систему анонимно". затем это - (обычно) проблема настройки безопасности.
В этом случае отключают режим безопасности для Вашей привязки:
<netTcpBinding>
<binding name="MyCustomBinding">
<security mode="None" />
</binding>
</netTcpBinding>
, Но лучше должен был бы работать с сертификатами.
Сеть. Привязка TCP использует пользовательский формат кадров проводного уровня, который действительно не документируется, хотя Nicholas Allen запустил серию сообщений в блоге по теме недавно. Ряды запускаются здесь: http://blogs.msdn.com/drnick/archive/2009/01/19/message-framing-part-1.aspx
Честно говоря, Сеть. TCP действительно, в настоящее время, более полезен для WCF к коммуникации WCF. если Вы хотите к interop с пользовательским форматом TCP, который необходимо обработать, Вы - очень более обеспеченные или использующие неструктурированные сокеты или создание Вашего собственного транспортного канала WCF (который не мог бы быть тривиальным, btw)