All streams
Search
Write a publication
Pull to refresh
17
0
Смирнов Сергей @Serginio1

Программист

Send message
А можно на ссылочку на
который все равно обращается к кроссплатформенному С++,


Смысл в том, что можно использовать .Net сборки напрямую без дополнительного написания ВК. С С++ тебе нужно под каждую задачу делать ВК, знать С++.
Здесь ты используешь уже готовые классы, либо пишешь сборку на .Net без всяких заморочек с ВК.
То есть одна ВК через которую ты можешь использовать любые сборки. Не нужно знать C#, VB.NET,F#. Нужно знать только классы методы и свойства. Это аналог COM.
Переменную нельзя а метод JQuery и все его прекрасно используют.
А насчет легче, то старое название еръ
значительно легче. Только вот смыл произношения при программировании? Особенно когда все поголовно используют сокращения. Смысл ъ как раз в том, что его никто практически не применяет и меньше конфликтов при одинаковом названии метода.
А как произносится $
А как удалить комментарий?
Я не вижу разницы между
var данныеЭкселя = Данные.GroupBy(i => i.НомСтроки).Select(n=> new { НомСтроки = n.Key, Ячейки = n.ToArray() }).OrderBy(j => j.НомСтроки);

Никакой смысловой нагрузки они не несут. Так ты и не ответил, что кроме Русслиша ты увидел?

А зачем отказываться от Русслиша?
Из статьи в статью только обращают на Русслиш. Что по теме понравилось, не понравилось.
Если бы ты повнимательнее почитал статью то увидел Ужас
 var данныеЭкселя = Данные.GroupBy(ё => ё.НомСтроки).Select(ъ => new { НомСтроки = ъ.Key, Ячейки = ъ.ToArray() }).OrderBy(ь => ь.НомСтроки);

Это код на 1С. Для начала нужно прочитать все статьи с начала.
Так как в Native Api нельзя передавать объекты, то возвращается ссылка

//1С при передаче по ссылке свойства ВК Список.Current
// при выходе из метода присваивает  Список.Current значение переданное изначально
// Поэтому помечаем входной параметр как Знач
//Или же делать так, если методы изменить нельзя 
// То нужно присвоить значение переменной и вызвать метод передав в параметрах эту переменную
//Стр=Список.Current; 
//Зазача=ъ(Стр);
Функция Ъ(знач Ссылка)
	
	// Создаем объект по ссылке полученной из методов .Net классов
	//Физически это строка ёЁ<Ьъ>№_%)Э?&2 содержащее 12 символов для отделения их от других строк
	//и индекс в спике исполуемых объектов на стороне .Net
	
	рез = Новый("AddIn.NetObjectToNative.NetObjectToNative");
	// И установим ссылку
	рез.УстановитьСсылку(Ссылка);    
	возврат  рез
КонецФункции // СоздатьОбъектПоСсылке()

Ну он вышел то совсем недавно. Но С++ нужно писать ВК. Здесь можно использовать код. Мало того скоро напишу для Net Core аналог .NET(C#) для 1С. Динамическая компиляция класса обертки для использования .Net событий в 1С через ДобавитьОбработчик или ОбработкаВнешнегоСобытия

Сейчас проверил такой код

var compilation = Microsoft.CodeAnalysis.CSharp.CSharpCompilation.Create("a")
    .WithOptions(new Microsoft.CodeAnalysis.CSharp.CSharpCompilationOptions(Microsoft.CodeAnalysis.OutputKind.DynamicallyLinkedLibrary))
    .AddReferences(
        Microsoft.CodeAnalysis.MetadataReference.CreateFromFile(typeof(object).GetTypeInfo().Assembly.Location))
        .AddSyntaxTrees(Microsoft.CodeAnalysis.CSharp.CSharpSyntaxTree.ParseText(
        @"
using System;

public  class C
{
  
     public  C(){}
    public string  M()
    {
        return ""Hello Roslyn."";
    }
}"));

            var fileName = @"d:\NetStandart\TestCoreNetApp\src\TestCoreNetApp\bin\Debug\netcoreapp1.0\a.dll";

            compilation.Emit(fileName);

            var a = System.Runtime.Loader.AssemblyLoadContext.Default.LoadFromAssemblyPath(fileName);


            Type тип = a.GetType("C");
            var obj = Activator.CreateInstance(тип);

            var res = тип.GetMethod("M").Invoke(obj, null);
            Console.WriteLine(res.ToString());
А продуктивней в чем? Там по сути то задержки это 1С да посылка сообщений на сам сервер. При этом до сих пор нет асинхронных методов.
Что касается WebSocket то в .Net Core они появятся осенью в 1.1
.NET Core Roadmap
Там хорошая технология SignalR

1C Messenger для отправки сообщений, файлов и обмена данными между пользователями 1С, вэб страницы, мобильными приложениями а ля Skype, WhatsApp

.NET Core Roadmap

Уже сейчас много кроссплатформенного под .Net Core
Например RSS Каналы
Могу посмотреть какие есть в .Net Core. В большом есть. У меня к сожалению сейчас нет Linux но должно компилироваться. Но например взял 8.3.9 и скомпилировал по 64. Там вылетает ошибка, хотя если сделать свое 64 приложение то все нормально работает. Попробую откомпилировать по VS 2013
http://rsdn.org/forum/dotnet/6538046.1
Они на мне все выплеснулись
Ну можно и с линукса 1С, Linux, Excel, Word, OpenXML,ADO и Net Core
Там суть в другом. Когда выставляешь context.Format.UseJson(); то идут заголовки и 1С возвращает данные в формате JSON.
Я написал два топика
1С Linux. Что не хватает по сравнению с Windows? InfoStart
1С Linux. Что не хватает по сравнению с Windows? Mista.ru

Но так и не получил внятного ответа. Меня прежде всего интересует что мне добавить, что бы моя разработка заинтересовала людей.
Чего не хватает в Linux по сравнению с Windows
Кстати в версии 8.3.10 планируется передача в параметрах двоичных данных
Раньше при передаче двоичных данных между 1С: Предприятием и внешней компонентой существовал ряд ограничений. Например, передать двоичные данные во внешнюю компоненту было нельзя, а при работе в веб-клиенте обмен двоичными данными был вообще невозможен.

Теперь мы убираем все эти ограничения. Обмен двоичными данными вы можете осуществлять в обе стороны и даже в веб-клиенте.

На работе существующих внешних компонент это никак не отразится. Они будут работать, как и раньше. А вот во вновь создаваемых компонентах вы сможете теперь в качестве параметров передавать объекты ДвоичныеДанные


https://wonderland.v8.1c.ru/blog/rasshirenie-funktsionalnosti-raboty-s-dvoichnymi-dannymi/
Вот здесь Linq To ODATA я работал с JSON. Можно посмотреть фиддлером запросы
Молодцы! Но год назад не работало

Linq To ODATA

Да есть возможность в ODATA сразу подгружать нужные свойства
var result = (from Тестовый in context.Catalog_Тестовый.Expand("РеквизитСправочник") 
                          where Тестовый.Ref_Key == new Guid("aada18ad-5308-11e5-8e05-c86000c70663") 
                          select Тестовый).SingleOrDefault();


Но пока в 1С Параметр $expand не поддерживается"
К сожалению приходится не только программировать (на разных языках), но еще и заниматься администрированием. Это не правильно.
Основной закон развития капитализма (эволюции), это увеличение специализации.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity