box / box-windows-sdk-v2

Windows SDK for v2 of the Box API. The SDK is built upon .NET Framework 4.5
https://developer.box.com
Apache License 2.0
186 stars 163 forks source link

How to get deleted items? #32

Closed Rod-Sychev closed 10 years ago

Rod-Sychev commented 10 years ago

Is there a way to retrieve a list of items in the Trash? I am aware about the FoldersManager.GetTrashItemsAsync and FoldersManager.GetTrashedFolderAsync however these methods are written in the way that I need to know the id of the folder/item to retrieve it however in my case I've got no knowledge about that and just want to grab all the deleted items preferably given the time boundaries, i.e. get all the deleted items from noon March 13th to noon March 14th.

Can this be achieved?

Any help is greatly appreciated.

brianytang commented 10 years ago

Unfortunately, this capability is currently not available in our API, which is why it is not in our SDK. Will keep you updated should this change.

brianytang commented 10 years ago

Speaking with the API team, it looks like they do offer a folder/trash/items endpoint that might fit your needs but is not currently part of our SDK. Will update this thread when it is included

Rod-Sychev commented 10 years ago

Unfortunately this is blocking our product's integration with Box feature from being completed and released to our customers therefore we would really appreciate if this this was done in the ASAP manner. Thank you in advance for your cooperation.

Rod-Sychev commented 10 years ago

Has any progress been made regarding this issue?

Rod-Sychev commented 10 years ago

Brian,

Can you look at the pull request #36?

Thanks, Rodion.

brianytang commented 10 years ago

Hi Rodion,

As mentioned before, I've gone ahead and merged your pull request, fixed and deprecated the previous method and uploaded the new version to nuget: https://www.nuget.org/packages/Box.V2/1.1.1

Thanks for your contribution!

Rod-Sychev commented 10 years ago

Brian,

I have just tried out the new version of SDK and it does not seem to work for me at all. See the errors below:

image

I have noticed that you are targeting 4.03 not 4.0 as it says on the NuGet website, so I have upgraded to 4.03 and have made my project target 4.03 however it is still would not compile.

Any thoughts?

brianytang commented 10 years ago

Can you show the full list of errors? The errors on the top are showing that it's having issues with the assembly but doesn't offer more information than that.

I've incorporated the latest bits into a new project and it appears to be compiling correctly. Can you roll your code back to when you were using the previous version of the assembly to confirm it is still working? This will help rule out system changes.

Rod-Sychev commented 10 years ago

Hey Brian,

Looks like I've figured it out.

Even though I used package manager console to install nuget package of the latest Box.V2 SDK my solution was still targeting MIcrosoft.Bcl.1.1.3 solution while Box.V2.dll was referencing the 1.1.6 one and therefore could not resolve. It's a good sense to browse through the warnings every once in a while too (=

Thanks for your help, Rodion.

P.S. What is with the watermark for getting deleted items? Should I open another issue specifically for it? Can this be achieved in the nearest future at all?

Rod-Sychev commented 10 years ago

Brian,

I believe we've got a problem here, when I got to actually using dll, it would throw an exception while trying to construct the BoxConfig object:

image

This is really frustrating.

brianytang commented 10 years ago

This may be a package management issue. Difficult to tell without being able to see your project.

Is it possible there are multiple references to the same dll but of different versions? Perhaps try cleaning the solution by removing all nuget references and then adding them back. Also double check that the dll's are "unlocked" (Windows automatically disables dlls downloaded from the internet).

Rod-Sychev commented 10 years ago

No, there are no multiple references and all dlls are unlocked.

From my perspective the problem is with the NIto.AsyncEx dll as it says in the exception. I had to upgrade reference of Microsoft.Bcl to the most up to date that is 1.1.6 to make the Box.V2.dll to compile, the System.Threading.Tasks.dll is now of version 2.6.6.0 however Nito.AsyncEx is still referencing the 2.6.3.0 version and, of course, failing to load it as it's gone.

It looks like you need to update your references to the newest version of Nito.AsyncEx, which is 3.0.0 as of yesterday, I know it's a prerelease version but I don't see other solutions here.

brianytang commented 10 years ago

I have tried creating multiple projects from scratch and have not been able to reproduce the same issue.

Can you confirm upgrading to Nito.AsyncEx to 3.0 resolves your issue? Have you tried creating a blank project and importing the SDK and seeing if you see the same issues?

Rod-Sychev commented 10 years ago

I've managed to resolve the issue by installing Microsoft.Bcl.1.1.8.