Does anybody know of a good library out there for developing for Facebook using the REST API in C#. I've been using the Facebook Developer Toolkit for some time now, but have more recently become annoyed at how key functionality is broken (even in the updated 3.1 beta). I looked into using the Facebook C# SDK, but this only appears to have a version for .NET 4.0.
Facebook C# SDK says
Note: If you are looking for the WP7, Silverlight, .Net 35 builds of this project you will need to download the latest source and run the Build/runbuild.cmd. These builds are currently not in our "supported" release, but they should work just as well.
Having worked extensively with the Facebook C# SDK I can confirm that there is a 3.5 build in the latest version, you just need to run the build scripts. There are also numerous discussions on how exactly to get it to build properly.
I have found through all my research that this SDK is the most rapidly updated and dependable SDK for .NET. If you have any problems using it then just drop a question on stackoverflow with the tag facebook-net-sdk and I'd be happy to answer
Facebook# is pretty good, though I had to workaround a few things.
You might not want to use the REST API, though; they're deprecating it and bits of it may stop working...
Related
I've just installed Visual Studio Community and wanted to have a play around with C# (.net 6 LTS) and the graph API. I've created a winform for this purpose.
I've looked at the documentation and can see i need to install the SDK via nuget, but when i'm searching the repository i can't seem to see it.
Am i doing something silly?
It would seem the default install didn't include the online nuget packages. so i spotted an image on another site with the package source. Add it and can now see the packages as expected.
I have implemented the application to read all the google contacts. The application was done by a .NET Core. I have used the Google.GData.Contacts(Version 2.2.0) Nuget package to read all the contacts. My application always show some warning messages like below
As per this document https://developers.google.com/contacts/v3, I believe the version 3.0 is there. But, I'm not sure how to include or use it.
It would be much appreciated if anyone help me on this.
There hasnt been any development on the GData library in years gdata. So I dont think its going to work with .net core.
This is due to the fact that most of the gdata apis have been shut down by now gdata.
As you can see from the nuget page Google.GData.Contacts the last update was 6/25/2013 which is before the release date of .net core.
What you should consider doing is checking the google people api which should contain similar response and supports the Google .net client library.
Install-Package Google.Apis.People.v1 -Version 1.25.0.830
It is still live
The google contacts api is still live so you can use it if you like you will just have to create your own system to access the endpoints. As google has no library that works with .net core for gdata.
I am developing an app with .NET Standard 2.0 project as core project, so bumped into the fact, that I am not sure how I should (can) handle the famous easy-to-access-and-setup approach with MvvmCross.
Search for Cirrious.MvvmCross.Plugins.Sqlite plugin in Nuget doesn't return anything (apparently it's been a while and it's not supported).
SQLite-PCL doesn't seem like sound .NET Standard-ish, plus there is a whole bunch of different packages with similar name (and with no any close reference to MvvmCross actually) appear.
There is also a reference to sqlite-pcl-net plugin in release notes for MvvmCross 5, but it also "doesn't smell" Mvx-y.
So, what's going on with MvvmCross SQLite these days? What should I use? Any ideas?
There used to be an official MvvmCross Plugin for SQLite but it was dropped sometime around early 2017 because the plugin was redundant. SQLite is probably the most popular database used in MvvmCross applications, but there is nothing in MvvmCross requiring this. You are still free to use Realm, Entity Framework Core, etc.
You should be using the praeclarum/sqlite-net version of SQLite since Android 7.0. Here is the NuGet feed for the package. This version supports .NET Standard and PCL. Other forks are not maintained as much, or stopped working reliably on Android due to the changes to the way SQLite was changed in Android 7.0.
I've also recently provided another answer to a question asking how to add SQLite to an MvvmCross application since the plugin was removed. I provided some sample code for Android in the answer. The old MvvmCross SQLite Plugin source code is also still available.
I am creating a fresh Mono for android application using http://xamarin.com/monoforandroid
I selected Mono for Android Application using Visual C# option.
My Android target version is :
I went to references of the project and tried adding my pre existing dlls (made in .NET 4 Framework)
and I got this error:
The strange stuff is there is no option to change the .NET Framework from project properties. Can you tell me what I am missing?
The problem here is that you're trying to reference a .NET 4 DLL from a project that isn't .NET 4. Mono for Android uses its own profile for .NET, which is very similar to that of Silverlight (but not exactly the same). While it's possible that adding a DLL compiled for a different profile will work, it's very risky as you will probably run into problems at runtime where your app will crash, due to something being missing from the Mono for Android profile.
The best answer right now is to create a Mono for Android class library, link in the appropriate files from the library you want to use, and reference that. This will give you compile-time checking that you're not using anything unsupported by the Mono for Android profile, and help keep you more sane in the long run. I have an old blog post up here that talks about how to link files across projects.
That said, in this case you're in luck because someone else has already done that last part for you! Check out this fork of Json.NET which provides versions for MonoTouch and Mono for Android.
The strange stuff is there is no option to change the .NET Framework from project properties. Can you tell me what I am missing?
It's not particularly strange - that dialog box was written by Microsoft, with its own project types in mind. It sounds like Mono for Android doesn't have the same options available.
I strongly suspect you'll just have to use a version of JSON.NET targeting .NET 3.5.
(Having said that, Mono for Android claims to support "dynamic language features" which sounds like it should be targeting .NET 4. Odd. I suspect the fix is the same though.)
When I first created my site, there were no .NET SDKs for Facebook so I wrote my own. It was pretty hacky, but it worked. Due to various Facebook changes, it's now broken beyond repair so I figured I'd use a real library. The one I found was the Facebook C# SDK.
However, it seems you can only download the source and compile it, and it seems it requires .NET 4.0 to compile. Also, looking through the code it seems to use .NET features such as System.Threading.Tasks. I'm still on .NET 3.5 and cannot upgrade at the moment. I'm wondering if there's a) a way to make this project work on 3.5, or b) another library that would be better in my case.
Facebook C# SDK supports .net 3.5sp1.
You can download using nuget.
If you are using VS 2008 where nuget package manager is not support, you can download using nuget command line tool. (http://nuget.codeplex.com/releases)
nuget install Facebook
For pre-release version you can download using the following command.
nuget install Facebook -pre
I have websites in .Net 3.5 using the latest code from the Facebook C# SDK. However, here's what I do. I use the "client" Facebook.dll to do all the stuff. Yeah, I don't get some of the wizbang session information, etc. But I do get full access to the API. I use javascript for authentication then AJAX the access token to the server.
I guess it depends on how committed to making the new SDK work with your codebase.
You could branch the code from Facebook C# SDK as you listed and replace all the task stuff with System.Threading.Threads, but that could result in a lot of work if there is extensive use of Tasks.
Or you could update your SDK to just address the areas you currently require until you can move to .NET 4. At least that way your project won't need reworking, just your internal library that your project is already referencing.