Внёс примеры использования веб-службы
This commit is contained in:
22
WebApiSamples/Asp.net+JavaScript/TestLersApi.sln
Normal file
22
WebApiSamples/Asp.net+JavaScript/TestLersApi.sln
Normal file
@ -0,0 +1,22 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.24720.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestLersApi", "TestLersApi\TestLersApi.csproj", "{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
17
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx
Normal file
17
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx
Normal file
@ -0,0 +1,17 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TestLersApi.Default" %>
|
||||
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<div>
|
||||
<script src="/jquery-1.6.4.min.js" type="text/javascript"></script>
|
||||
<script src="/TestLersApi.js" type="text/javascript"></script>
|
||||
</div>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
17
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx.cs
Normal file
17
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace TestLersApi
|
||||
{
|
||||
public partial class Default : System.Web.UI.Page
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
23
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx.designer.cs
generated
Normal file
23
WebApiSamples/Asp.net+JavaScript/TestLersApi/Default.aspx.designer.cs
generated
Normal file
@ -0,0 +1,23 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <автоматически создаваемое>
|
||||
// Этот код создан программой.
|
||||
//
|
||||
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
|
||||
// повторной генерации кода.
|
||||
// </автоматически создаваемое>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace TestLersApi
|
||||
{
|
||||
public partial class Default {
|
||||
|
||||
/// <summary>
|
||||
/// form1 элемент управления.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Автоматически создаваемое поле.
|
||||
/// Для изменения переместите объявление поля из файла конструктора в файл кода программной части.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
}
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Управление общими сведениями о сборке осуществляется с помощью
|
||||
// набора атрибутов. Измените значения этих атрибутов для изменения сведений,
|
||||
// общие сведения об этой сборке.
|
||||
[assembly: AssemblyTitle("TestLersApi")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("TestLersApi")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2012")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Установка значения False в параметре ComVisible делает типы в этой сборке невидимыми
|
||||
// для COM-компонентов. Если необходим доступ к типу в этой сборке из
|
||||
// COM, следует установить атрибут ComVisible в TRUE для этого типа.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Указанный ниже идентификатор GUID предназначен для идентификации библиотеки типов, если этот проект будет видимым для COM-объектов
|
||||
[assembly: Guid("245ef887-0d90-4ff8-a52c-5399e292cdfb")]
|
||||
|
||||
// Сведения о версии сборки состоят из указанных ниже четырех значений:
|
||||
//
|
||||
// Основной номер версии
|
||||
// Дополнительный номер версии
|
||||
// Номер сборки
|
||||
// Редакция
|
||||
//
|
||||
// Можно задать все значения или принять номер построения и номер редакции по умолчанию,
|
||||
// используя "*", как показано ниже:
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
108
WebApiSamples/Asp.net+JavaScript/TestLersApi/TestLersApi.csproj
Normal file
108
WebApiSamples/Asp.net+JavaScript/TestLersApi/TestLersApi.csproj
Normal file
@ -0,0 +1,108 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>
|
||||
</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{10B68319-F7E8-4460-9BF8-B7C0D6FFB9BB}</ProjectGuid>
|
||||
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>TestLersApi</RootNamespace>
|
||||
<AssemblyName>TestLersApi</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<UseIISExpress>false</UseIISExpress>
|
||||
<FileUpgradeFlags>
|
||||
</FileUpgradeFlags>
|
||||
<UpgradeBackupLocation>
|
||||
</UpgradeBackupLocation>
|
||||
<OldToolsVersion>4.0</OldToolsVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Web.DynamicData" />
|
||||
<Reference Include="System.Web.Entity" />
|
||||
<Reference Include="System.Web.ApplicationServices" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Web.Extensions" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Web.Services" />
|
||||
<Reference Include="System.EnterpriseServices" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="TestLersApi.js" />
|
||||
<Content Include="Default.aspx" />
|
||||
<Content Include="jquery-1.6.4.min.js" />
|
||||
<Content Include="Web.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Default.aspx.cs">
|
||||
<DependentUpon>Default.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Default.aspx.designer.cs">
|
||||
<DependentUpon>Default.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
|
||||
<ProjectExtensions>
|
||||
<VisualStudio>
|
||||
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
|
||||
<WebProjectProperties>
|
||||
<UseIIS>False</UseIIS>
|
||||
<AutoAssignPort>True</AutoAssignPort>
|
||||
<DevelopmentServerPort>58035</DevelopmentServerPort>
|
||||
<DevelopmentServerVPath>/</DevelopmentServerVPath>
|
||||
<IISUrl>
|
||||
</IISUrl>
|
||||
<NTLMAuthentication>False</NTLMAuthentication>
|
||||
<UseCustomServer>False</UseCustomServer>
|
||||
<CustomServerUrl>
|
||||
</CustomServerUrl>
|
||||
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
|
||||
</WebProjectProperties>
|
||||
</FlavorProperties>
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
160
WebApiSamples/Asp.net+JavaScript/TestLersApi/TestLersApi.js
Normal file
160
WebApiSamples/Asp.net+JavaScript/TestLersApi/TestLersApi.js
Normal file
@ -0,0 +1,160 @@
|
||||
/// <reference path="jquery-1.6.4.js" />
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
// Разрешаем кроссдоменное взаимодействие (cross-domain, XCC - Cross-site scripting) по технологии CORS (Cross-origin resource sharing)
|
||||
jQuery.support.cors = true;
|
||||
|
||||
// Отправляем запрос на вход в систему
|
||||
SendLoginRequest('demo', 'demo');
|
||||
});
|
||||
|
||||
|
||||
function ReceivedLoginResponse(data) {
|
||||
/// <summary>
|
||||
/// Обработчик события успешного входа в систему
|
||||
/// </summary>
|
||||
|
||||
// Данные получаемые от сервера содержатся в свойстве d
|
||||
data = data.d;
|
||||
|
||||
// Если есть ошибка, выводим её, иначе отправляем запрос на получение списка точек учета
|
||||
|
||||
if (data.IsError)
|
||||
alert(data.ErrorMessage);
|
||||
else
|
||||
SendGetMeasurePointListRequest();
|
||||
}
|
||||
|
||||
function ReceivedMeasurePointListResponse(data) {
|
||||
/// <summary>
|
||||
/// Обработчик события получения списка точек учета
|
||||
/// </summary>
|
||||
|
||||
// Данные получаемые от сервера содержатся в свойстве d
|
||||
data = data.d;
|
||||
|
||||
// Если список точек учета не пустой отправляем запрос на получение потребления по первой точке учета из списка
|
||||
if (data.MeasurePointList.length > 0)
|
||||
SendGetMeasurePointConsumptionRequest(data.MeasurePointList[0].Id);
|
||||
}
|
||||
|
||||
function ReceivedMeasurePointConsumptionResponse(data) {
|
||||
/// <summary>
|
||||
/// Обработчик события получение потребления по точке учета
|
||||
/// </summary>
|
||||
|
||||
// Данные получаемые от сервера содержатся в свойстве d
|
||||
data = data.d;
|
||||
|
||||
// Если есть данные потребления, выводим сообщение со значением T_in за первую метку времени
|
||||
if (data.Data.length > 0)
|
||||
{
|
||||
var jsonDate = data.Data[0].DateTime
|
||||
|
||||
var dataDate = new Date(parseInt(jsonDate.substr(6)));
|
||||
var T_in = data.Data[0].T_in;
|
||||
|
||||
alert(dataDate.toString() + ': ' + T_in.toString());
|
||||
}
|
||||
else
|
||||
alert('По точке учета нет данных потребления.');
|
||||
|
||||
// Получаем список объектов учета с расширенной информацией
|
||||
SendGetNodeListExtendedRequest();
|
||||
}
|
||||
|
||||
function ReceivedNodeListExtendedResponse(data)
|
||||
/// <summary>
|
||||
/// Обработчик события получение списка объектов учета
|
||||
/// </summary>
|
||||
{
|
||||
// Данные получаемые от сервера содержатся в свойстве d
|
||||
data = data.d;
|
||||
}
|
||||
|
||||
function SendLoginRequest(userName, password) {
|
||||
/// <summary>
|
||||
/// Отправляет запрос на вход в систему ЛЭРС УЧЕТ
|
||||
/// </summary>
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "http://localhost:54025/Api.asmx/Login",
|
||||
contentType: "application/json; charset=utf-8",
|
||||
dataType: "json",
|
||||
xhrFields: { withCredentials: true },
|
||||
crossDomain: true,
|
||||
data: "{ 'userName':'" + userName + "','password':'" + password + "' }",
|
||||
success: ReceivedLoginResponse,
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('Не удалось войти в систему.');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function SendGetMeasurePointListRequest() {
|
||||
/// <summary>
|
||||
/// Отправляет запрос на получение списка точек учета
|
||||
/// </summary>
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "http://localhost:54025/Api.asmx/GetMeasurePointList",
|
||||
contentType: "application/json; charset=utf-8",
|
||||
dataType: "json",
|
||||
xhrFields: { withCredentials: true },
|
||||
crossDomain: true,
|
||||
data: "",
|
||||
success: ReceivedMeasurePointListResponse,
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('Не удалось получить список точек учета.');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function SendGetNodeListExtendedRequest() {
|
||||
/// <summary>
|
||||
/// Отправляет запрос на получение списка объектов учета
|
||||
/// </summary>
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "http://localhost:54025/Api.asmx/GetNodeListExtended",
|
||||
contentType: "application/json; charset=utf-8",
|
||||
dataType: "json",
|
||||
xhrFields: { withCredentials: true },
|
||||
crossDomain: true,
|
||||
data: "{ 'flags':" + 1024 + "}", // Запрашиваем помещения
|
||||
success: ReceivedNodeListExtendedResponse,
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('Не удалось получить список объектов учета.');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function SendGetMeasurePointConsumptionRequest(measurePointId) {
|
||||
/// <summary>
|
||||
/// Отправляет запрос на получение потребления за текущий месяц
|
||||
/// </summary>
|
||||
|
||||
var nowDate = new Date();
|
||||
|
||||
var currentStartDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), 1);
|
||||
var currentEndDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate());
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "http://localhost:54025/Api.asmx/GetMeasurePointConsumption",
|
||||
contentType: "application/json; charset=utf-8",
|
||||
dataType: "json",
|
||||
xhrFields: { withCredentials: true },
|
||||
crossDomain: true,
|
||||
data: "{ 'measurePointId':" + measurePointId + ", 'startDate':'" + currentStartDate.toJSON() + "','endDate':'" + currentEndDate.toJSON() + "', 'dataType': 'Day' }",
|
||||
success: ReceivedMeasurePointConsumptionResponse,
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('Не удалось получить данные потребления по точке учета.');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
13
WebApiSamples/Asp.net+JavaScript/TestLersApi/Web.config
Normal file
13
WebApiSamples/Asp.net+JavaScript/TestLersApi/Web.config
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<!--
|
||||
Дополнительные сведения по настройке приложения ASP.NET см. по ссылке
|
||||
http://go.microsoft.com/fwlink/?LinkId=169433
|
||||
-->
|
||||
|
||||
<configuration>
|
||||
<system.web>
|
||||
<compilation debug="true" targetFramework="4.0" />
|
||||
</system.web>
|
||||
|
||||
</configuration>
|
4
WebApiSamples/Asp.net+JavaScript/TestLersApi/jquery-1.6.4.min.js
vendored
Normal file
4
WebApiSamples/Asp.net+JavaScript/TestLersApi/jquery-1.6.4.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user