Вы можете достичь этого с помощью веб-службы.
прежде всего добавьте следующий код на страницу aspx.
<div>
<input type="text" value="" id="tbCountries" />
</div>
Теперь создайте свой веб-сервис, используя следующий код .
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data.SqlClient;
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.>WebService {
[WebMethod]
public List<string> ShowCountryList(string sLookUP)
{
List<string> lstCountries = new List<string>();
string sConnString = "Data Source=DNA;Persist Security Info=False;" +
"Initial Catalog=DNA_CLASSIFIED;User Id=sa;Password=;Connect Timeout=30;";
SqlConnection myConn = new SqlConnection(sConnString);
SqlCommand objComm = new SqlCommand("SELECT CountryName FROM Country " +
"WHERE CountryName LIKE '%'+@LookUP+'%' ORDER BY CountryName", myConn);
myConn.Open();
objComm.Parameters.AddWithValue("@LookUP", sLookUP);
SqlDataReader reader = objComm.ExecuteReader();
while (reader.Read()) {
lstCountries.Add(reader["CountryName"].ToString());
}
myConn.Close(); return lstCountries;
}
}
Наконец, создайте метод jquery для связывания Текстовое поле с webservice,
<script>
$(document).ready(function() {
BindControls();
});
function BindControls() {
$("#tbListOfCountries").autocomplete({
source: function(request, response) {
$.ajax({
url: "WebService.asmx/ShowCountryList",
data: "{ 'sLookUP': '" + request.term + "' }",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
dataFilter: function(data) { return data; },
success: function(data) {
response($.map(data.d, function(item) {
return { value: item }
}))
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
minLength: 1 // MINIMUM 1 CHARACTER TO START WITH.
});
}
</script>
из Java SE 8 for the Really Impatient
by Cay S. Horstmann:
2.12. Примитивные потоки типов
... Если вы хотите хранить короткие, char, byte и boolean, используйте IntStream, а для float используйте DoubleStream. Дизайнеры библиотеки не думали, что стоит добавить еще пять типов потоков.
blockquote>
Вот лучший способ, который не связан с копированием данных.
DoubleStream ds = IntStream.range(0, floatArray.length)
.mapToDouble(i -> floatArray[i]);
Я задал себе этот вопрос. Чтобы ответить на него, я начал работать над библиотекой, которая включала такие вещи, как FloatToIntFunction и ByteToCharFunction и (конечно) FloatStream, CharStream, ByteStream и т. Д. Это быстро стало для меня головной болью.
Было бы много работы со стороны разработчиков библиотек, чтобы сделать это, потому что вам нужно будет создавать методы и интерфейсы между всеми примитивами типы данных. По мере того как вы внедряете больше типов данных, они становятся все более и более беспорядочными. Представьте, что вам нужно внедрять методы для перехода от float ко всем другим примитивным типам, двойным ко всем другим примитивным типам, char ко всем другим примитивным типам и т. Д.
Долгосрочное решение для Java для добавления типов значений, чтобы вы могли делать такие вещи, как Stream<int>
и Stream<float>
, а не использовать типы обёртки (Stream<Integer>
и Stream<Float>
)
Взгляните на проект Vahalla для обновления этой функции которые могут быть добавлены в Java в будущем. http://openjdk.java.net/projects/valhalla/