Browsing 7239 questions and answers with Jon Skeet

How to mark a C# assembly as a CLS Compliant when using new csproj format?

I recently upgraded a C# project from xproj format to the new csproj. During the migration, the old AssemblyInfo.cs has been removed so I'm wondering how I can indicate that my...
Jon Skeet
people
quotationmark

Just add AssemblyInfo.cs back, with only the parts that aren't autogenerated. There's nothing to stop you from applying assembly attributes in code - it's just that most of the common attributes are provided from the project settings. more 10/21/2017 8:14:23 PM

people

Different property value for contracts

I have two interfaces implemented by one main class. How can i refactor my code in a way that on implementing each contract, the methods of each contract has a different value for...
Jon Skeet
people
quotationmark

It sounds like all you need is explicit interface implementation: public class Class1 : Interface1, Interface2 { // Note the lack of access modifier here. That's important! Data Interface1.GetData() { // Implementation... more 10/20/2017 6:29:56 AM

people

Why can't the type conversion of `this` be implicitly inferred from the generic contraint?

I have the following class: public class Item<TItem> where TItem : Item<TItem> { void GetReference() { TItem item = this; } } Here TItem...
Jon Skeet
people
quotationmark

Because it wouldn't be safe. Consider: public class GoodItem : Item<GoodItem> { // No problem } public class EvilItem : Item<GoodItem> { // GetReference body would be equivalent to // GoodItem item = this; //... more 10/19/2017 4:59:16 PM

people

How can one calculate the Nth non holiday from a given date?

Let's say I have a List<DateTime> L that contains holidays dates in the US. Let DateTime d be today 2017/10/19. I want to calculate the next n-th non-holiday date (where n...
Jon Skeet
people
quotationmark

If the set of holidays is finite (and reasonably small) It's really easy to create an infinite sequence of dates: static IEnumerable<DateTime> GetDates(DateTime start) { DateTime current = start; while (true) { ... more 10/19/2017 3:13:14 PM

people

Bigdecimal Not giving exact output in Java

Im adding three big decimals here, but it should give me accurate answer. I'm having two strings here and then converting to big decimal. Please dont ask why Im using strings....
Jon Skeet
people
quotationmark

The problem is your use of new BigDecimal(100.05). The value of a is then 100.0499999999999971578290569595992565155029296875. If you had specified that value as a string instead, all would be well: BigDecimal a = new... more 10/19/2017 10:45:29 AM

people

running a c# .net Console Application multiple time with different variables

I'm trying to automate a task. I have to repeat the task 14 times and want my application to do it for me. my application runs once without a problem. Can anyone explain how I do...
Jon Skeet
people
quotationmark

I'd suggest passing an argument into the Main method which is a file containing all the URLs to fetch. You can then read all those URLs into a list or array (e.g. with File.ReadAllLines, and infer the output file from the URL. Move most of... more 10/18/2017 6:16:40 PM

people

Avoid Google Calendar API adding an actual event in peoples calendars?

I am using the Google Calendar API with a service account. Idea is that we want to use it purely as an API backend, so we don't have to code it ourselves. That means we do not...
Jon Skeet
people
quotationmark

It sounds like your application needs its own calendar - so create one (see Calendars.insert for how to do this programmatically). Whether you need a single calendar for the whole application, regardless of user (in which case you'd... more 10/16/2017 4:45:38 PM

people

GetMethod equivalent in .NET Standard

In .NET Framework you can easily reflect methods. E.g.: var methodInfo = typeof(object).GetMethod("MemberwiseClone", bindingFlags); In a .NET Standard project, however, the...
Jon Skeet
people
quotationmark

For almost all reflection in .NET Core 1.x, you need a TypeInfo instead of Type. There's an extension method of GetTypeInfo in the System.Reflection namespace, so you want: using System.Reflection; // For GetTypeInfo ... var methodInfo =... more 10/16/2017 11:36:51 AM

people

name of class with generic parameters?

I'm trying to generate code for series of generic classes using T4. I want to know how to get full class name using reflection? public class Foo<TFirst, TSecond> {} var...
Jon Skeet
people
quotationmark

You can access the type parameter names by reflection using Type.GetGenericArguments: using System; public class Foo<TFirst, TSecond> {} class Test { static void Main() { var type = typeof(Foo<,>); ... more 10/14/2017 2:18:28 PM

people

does task.delay infinite code after it executed?

Just a quick question. We're having some misunderstanding here. for simplicity some code is removed: public async Task ConsumeAsync<T>(CancellationToken...
Jon Skeet
people
quotationmark

Should the last logline be logged or not when a cancel is requested? No, because the task returned by Task.Delay will be faulted, as is normal when a task is cancelled. more 10/11/2017 7:14:16 AM

people