Connectivity of Winform Applications/ASP.NET application with SAP databases - asp.net

How can I fetch data in a Winforms application or ASP.NET form from a SAP database? The .NET framework used is 2.0. , language is C# and SAP version is 7.10.

Not sure if this will work for you, but there's a C library, which can probably be used from your C# application and which provides a quite easy API for calling BAPIs in SAP. (Accessing the underlying database directly via SQL is not to be recommended... Better use BAPIs or a custom-tailored RFC-enabled function module.)
See http://service.sap.com/rfc-library
You may also be able to use the "SAP connector for Microsoft .NET" (from the same link above), but it was developed with .NET 1.1 and may have compatibility problems with .NET 2.0?!
Update (2011): Since Dec. 2010 there is a new version of the "SAP connector for Microsoft .NET" available, which works with .NET Frameworks 2.0, 3.5 and 4.0. This would now be the perfect solution for your question! See http://service.sap.com/connectors ---> SAP connector for Microsoft .NET

Apologies for the plug.... I work for ERP-Link, and we have a product, iNet.BPS, which is a VS2005 plug-in that helps you create proxy objects that can be used by your .NET code to call BAPI's on an SAP system. iNet.BPS lets you customize the BAPI method calls, for instance it lets you elide optional parameters your application is not using, thus simplifying your code by not having to pass over a dozen parameters to the BAPI. This product is not dependent on SAP AG's SAP Connector for .NET.
Here's a link to the marketing page, http://www.erp-link.com/html/product/product-overview-iNetBPS_Overview.asp

Related

Which .NET, EF and ASP for a new project?

I've done a reasonable amount of reading around on .NET Standard v .NET Core, watched a course on PluralSight regarding EF Core and done further reading on EF 6 v EF Core, and done some reading up in ASP.NET Core v ASP.NET.
What I still can't decide is what the recommendation is if I'm about to embark on a new project with a web interface. It's against SQL Server, and will be hosted on Windows and users will be connecting from Windows desktop machines.
As it's all Windows .NET Standard would suffice - though I could use .NET Core, I know that EF Core works against .NET Standard, I assume ASP.NET Core will as well.
At a later date there could be an extension for mobile functionality, but that could be written as an extension/module using Core or similar.
It's vary hard to find a clear answer on this as even on Microsoft's Docs site, the EF initial pages haven't been updated since the release of EF Core 2 and prior to that they seem to suggest that unless you need it, stick with EF 6.
Thanks
Tom
Looks like I was lead astray by some articles I read on .NET Standard.
However, I now have an answer from a post on the MSDN site see here

Microsoft SharePoint is not supported with version 4.0.30319.225

I'm using SharePoint 2010, Visual Studio 2010 Ultimate Edition with SP1. In my Console Project, I targeted .net framework 4.0, same with all the other 10 projects in the solution.
I did this to make the NSAPConnector work. NSAPConnector is the .net connector we used in consuming SAP BAPI functions.
Is there a work around for this setup to work? Or I would have to retarget all projects to .net framework 3.5? If I do that then the NSAPConnector will not work any more.
The requirements for SharePoint 2010 ( https://technet.microsoft.com/library/cc262485(v=office.14).aspx ) list Microsoft .NET Framework version 3.5 SP1 as a hard requirement. SharePoint 2010 isn't supported (and as you can see) doesn't work any other version of .Net.
You aren't clear on what integrations you are doing with SharePoint. If you doing have to tie in directly to server side SharePoint hooks, you can remotely integrate with SharePoint via SOAP APIs, SharePoint's Client Side Object Model and its REST APIs. This would free you up to use a client .Net Framework that is compatible with your SAP library.
If you need to tie into SharePoint server side, then you will need to host your SAP connecting code out of process (say for example as a Windows service or behind a web service interface and have your SharePoint Server code interact with your service/web service end point.

ASP.NET vnext and open database

is there some possibility to work with an open database like mysql, mariadb or other and ASP.NET vNext?
Perhaps a beta driver or something like that?
For ASP.NET vNext you can choose to target the full .NET Framework or a slimmed down, bin-deployable, cross platform, Core framework.
If you target the full .NET Framework then you get all the data access options you had before. If you target the CoreCLR then you can use the new version of Entity Framework (EF7). Currently we have the following providers available on CoreCLR; SQL Server, SQLite, and an in memory provider for testing. Of course, more providers will become available as we work towards RTM.
In addition to EF7, there are also the corresponding provider specific SDKs that EF is building on top of, and these can be used in application code as well (e.g. there is an implementation of SqlClient that can be used to access a SQL Server database).
You can read more about our plans for EF7 here - http://blogs.msdn.com/b/adonet/archive/2014/05/19/ef7-new-platforms-new-data-stores.aspx.
It depends on if you are using the CoreCLR (the trimmed down version) or the Desktop profiles. In the Desktop profile you have everything you have in .NET available and you can add your own open source libraries (via Nuget).
Just open up your project.json and add the needed dependencies.
Anyway you should not be dealing with low level ADO.NET, you can use Entity Framework, or Massive or nHibernate, or whatever, to abstract away the specific database your project is using now, as it is bound to change or multiply during the project lifetime...
You should still be able to use anything ADO.Net related with ASP.Net vNext - it is, after all, still .Net!
Yes, it is possible, but only if you use full .net profile (on windows it will be .net framework and on linux - mono). NHibernate working well on mono, so you can eventually use mysql, postgresql and other databases in you APS.NET 5 vNext application. Here is complete example of application with NHibernate and PostgreSQL on Ubuntu server.

Which Technology Stack Should I Use for Claims-Aware Applications

This is a second attempt with better wording of the problem I'm facing.
I have a simple requirement to implement an application that will allow web applications and standalone services that will be claims-aware (using ADFS). Note that I am talking about windows services in addition to web applications.
Which enabling interoperable technologies should a developer pick?
For the life of me, I can't find a resource that says: to build a claims-aware application using the latest upcoming frameworks, install these packages.
From a framework point of view, I am talking about the following:
Microsoft.IdentityModel
Microsoft.Owin
System.IdentityModel
Microsoft.Asp.Net.Identity
Which should I be using? Alpha / Beta packages are fine.
Thank you,
Richard
in .net 4.5 IdentityModel is now part of the core libraries (so it no longer called Microsoft.IdentityModel).
So for your system you would need the following:
System.IdentityModel for the FederationAuthenticationModule (which intercepts and verifies your SAML token submission) and for the SessionAuthenticationModule (which serializes/deserializes your claims.)
To create the claims that you will send between your applciations you would use:
System.Security.Claims
as I mentioned these are both in .net 4.5.
Microsoft.IdentityModel is the one you are looking for.
Microsoft.IdentityModel.Claims for IClaimsIdentity interface.
Microsoft.IdentityModel.Web for WSFederationAuthenticationModule.
Yup - System.IdentityModel is the way to go.
Refer: What's New in Windows Identity Foundation 4.5.
If you are wondering what the difference between WIF 3.5 and 4.5 is, refer:
Guidelines for Migrating an Application Built Using WIF 3.5 to WIF 4.5

How to convert application written in asp.net 3.5 to 2.0?

How to convert an application written in asp.net 3.5 to 2.0? I have a system in which there is only .net 2.0 . But my application is written in 3.5. I published that app using an another system (3.5 framework) and then I copy that published folder to my system (2.0 framework)and configured in IIS.When i try to browse,i got version problem error.
.NET 3.5 is 2.0 with a few extra libraries. So you can run them on the same web site. In fact you cannot even set a web application to run under 3.5. It just runs under 2.0.
ASP.NET 3.5 is still running on the .NET 2.0 CLR, if you go into IIS you'll see that you can only pick 2.0 or 1.1
So, if you REALLY want to go back to 2.0, replace all 3.5 stuff with 2.0 stuff: see the lists below.
The new stuff after 2.0 up to 3.5 is:
NET framework 3.0:
Includes a new set of managed code APIs that are an integral part of Windows Vista and Windows Server 2008 operating systems and provides
Windows Communication Foundation (WCF), formerly called Indigo; a service-oriented messaging system which allows programs to interoperate locally or remotely similar to web services.
Windows Presentation Foundation (WPF), formerly called Avalon; a new user interface subsystem and API based on XML and vector graphics, which uses 3D computer graphics hardware and Direct3D technologies.
Windows Workflow Foundation (WF) allows for building of task automation and integrated transactions using workflows.
Windows CardSpace, formerly called InfoCard; a software component which securely stores a person's digital identities and provides a unified interface for choosing the identity for a particular transaction, such as logging in to a website
.NET framework 3.5:
It implement Linq evolution in language. So we have the folowing evolution in class:
Linq for SQL, XML, Dataset, Object
Addin system
p2p base class
Active directory
ASP.NET Ajax
Anonymous types with static type inference
Paging support for ADO.NET
ADO.NET synchronization API to synchronize local caches and server side datastores
Asynchronous network I/O API
Support for HTTP pipelining and syndication feeds.
New System.CodeDom namespace.
If your application uses any of the above, you'd need to strip it out and replace with something not on the lists.

Resources